@ -426,18 +426,12 @@ class BaseWallet(object):
privkey = self . _get_priv_from_path ( path ) [ 0 ]
privkey = self . _get_priv_from_path ( path ) [ 0 ]
return hexlify ( privkey ) . decode ( ' ascii ' )
return hexlify ( privkey ) . decode ( ' ascii ' )
def _get_addr_int_ext ( self , internal , mixdepth , bci = None ) :
def _get_addr_int_ext ( self , get_script_func , mixdepth , bci = None ) :
script = self . get_internal_script ( mixdepth ) if internal else \
script = get_script_func ( mixdepth )
self . get_external_script ( mixdepth )
addr = self . script_to_addr ( script )
addr = self . script_to_addr ( script )
if bci is not None and hasattr ( bci , ' import_addresses ' ) :
if bci is not None and hasattr ( bci , ' import_addresses ' ) :
assert hasattr ( bci , ' get_wallet_name ' )
assert hasattr ( bci , ' get_wallet_name ' )
# we aggressively import ahead of our index, so that when
bci . import_addresses ( [ addr ] , bci . get_wallet_name ( self ) )
# detailed sync is needed in future, it will not find
# imports missing (and this operation costs nothing).
addrs_to_import = list ( bci . _collect_addresses_gap (
self , self . gaplimit ) )
bci . import_addresses ( addrs_to_import , bci . get_wallet_name ( self ) )
return addr
return addr
def get_external_addr ( self , mixdepth , bci = None ) :
def get_external_addr ( self , mixdepth , bci = None ) :
@ -449,7 +443,8 @@ class BaseWallet(object):
address into this blockchaininterface instance
address into this blockchaininterface instance
( based on Bitcoin Core ' s model).
( based on Bitcoin Core ' s model).
"""
"""
return self . _get_addr_int_ext ( False , mixdepth , bci = bci )
return self . _get_addr_int_ext ( self . get_external_script , mixdepth ,
bci = bci )
def get_internal_addr ( self , mixdepth , bci = None ) :
def get_internal_addr ( self , mixdepth , bci = None ) :
"""
"""
@ -459,7 +454,8 @@ class BaseWallet(object):
address into this blockchaininterface instance
address into this blockchaininterface instance
( based on Bitcoin Core ' s model).
( based on Bitcoin Core ' s model).
"""
"""
return self . _get_addr_int_ext ( True , mixdepth , bci = bci )
return self . _get_addr_int_ext ( self . get_internal_script , mixdepth ,
bci = bci )
def get_external_script ( self , mixdepth ) :
def get_external_script ( self , mixdepth ) :
return self . get_new_script ( mixdepth , False )
return self . get_new_script ( mixdepth , False )