* adding support for MySQL
[electrum-server.git] / server.py
index fd13130..4cd4b5b 100755 (executable)
--- a/server.py
+++ b/server.py
@@ -24,7 +24,7 @@ Todo:
 
 import time, socket, operator, thread, ast, sys,re
 import psycopg2, binascii
-import bitcoin
+import bitcoinrpc
 
 from Abe.abe import hash_to_address, decode_check_address
 from Abe.DataStore import DataStore as Datastore_class
@@ -278,8 +278,8 @@ class MyStore(Datastore_class):
 
 
 def send_tx(tx):
-    import bitcoin
-    conn = bitcoin.connect_to_local()
+    import bitcoinrpc
+    conn = bitcoinrpc.connect_to_local()
     try:
         v = conn.importtransaction(tx)
     except:
@@ -401,7 +401,7 @@ ds = BCDataStream.BCDataStream()
 
 def memorypool_update(store):
 
-    conn = bitcoin.connect_to_local()
+    conn = bitcoinrpc.connect_to_local()
     try:
         v = conn.getmemorypool()
     except:
@@ -509,7 +509,12 @@ if __name__ == '__main__':
     conf = DataStore.CONFIG_DEFAULTS
     args, argv = readconf.parse_argv( [], conf)
     args.dbtype= config.get('database','type')
-    args.connect_args = {'database' : config.get('database','database') }
+    if args.dbtype == 'sqlite3':
+       args.connect_args = { 'database' : config.get('database','database') }
+    elif args.dbtype == 'MySQLdb':
+       args.connect_args = { 'db' : config.get('database','database'), 'user' : config.get('database','user'), 'passwd' : config.get('database','pass') }
+    elif args.dbtype == 'psycopg2':
+       args.connect_args = { 'database' : config.get('database','database') }
     store = MyStore(args)
 
     thread.start_new_thread(listen_thread, (store,))