X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=server.py;h=973f932f8edca0f92548ff6975da24843491c1ea;hb=2b521da6a9f9fb386706d86a3d412986c58eba18;hp=7a0203b63c0dd3ed4d14531325eef6113362f140;hpb=66f6864590094cecc587deb58712873eecdc2a86;p=electrum-server.git diff --git a/server.py b/server.py index 7a0203b..973f932 100755 --- a/server.py +++ b/server.py @@ -38,7 +38,8 @@ import urllib # we need to import electrum sys.path.append('../client/') -import electrum +from wallet import Wallet +from interface import Interface config = ConfigParser.ConfigParser() @@ -324,7 +325,7 @@ class MyStore(Datastore_class): -class Direct_Interface(electrum.Interface): +class Direct_Interface(Interface): def __init__(self): pass @@ -522,7 +523,7 @@ def do_command(cmd, data, ipaddr): master_public_key = k.decode('hex') # todo: sanitize. no need to decode twice... print master_public_key wallet_id = random_string(10) - w = electrum.Wallet( Direct_Interface() ) + w = Wallet( Direct_Interface() ) w.master_public_key = master_public_key.decode('hex') w.synchronize() wallets[wallet_id] = w @@ -530,7 +531,7 @@ def do_command(cmd, data, ipaddr): print "wallets", wallets elif cmd == 'bccapi_getAccountInfo': - from electrum import int_to_hex + from wallet import int_to_hex v, wallet_id = ast.literal_eval(data) w = wallets.get(wallet_id) if w is not None: @@ -543,7 +544,7 @@ def do_command(cmd, data, ipaddr): out = "error" elif cmd == 'bccapi_getAccountStatement': - from electrum import int_to_hex + from wallet import int_to_hex v, wallet_id = ast.literal_eval(data) w = wallets.get(wallet_id) if w is not None: @@ -748,9 +749,14 @@ if __name__ == '__main__': store.catch_up() memorypool_update(store) block_number = store.get_block_number(1) - dblock.release() + except IOError: + print "IOError: cannot reach bitcoind" + block_number = -1 except: traceback.print_exc(file=sys.stdout) + block_number = -1 + finally: + dblock.release() time.sleep(10) print "server stopped"