def __init__( self, jsonrpc_client, channel_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): contract = jsonrpc_client.new_contract( CONTRACT_MANAGER.get_contract_abi(CONTRACT_NETTING_CHANNEL), to_normalized_address(channel_address), ) self.proxy = ContractProxy(jsonrpc_client, contract) self.address = channel_address self.client = jsonrpc_client self.poll_timeout = poll_timeout # Prevents concurrent deposit, close, or settle operations on the same channel self.channel_operations_lock = RLock() self.client = jsonrpc_client self.node_address = privatekey_to_address(self.client.privkey) CONTRACT_MANAGER.check_contract_version( self.proxy.contract.functions.contract_version().call(), CONTRACT_NETTING_CHANNEL, ) # check we are a participant of the given channel self.detail() self._check_exists()
def __init__( self, jsonrpc_client, manager_address, poll_timeout=DEFAULT_POLL_TIMEOUT): # pylint: disable=too-many-arguments if not isaddress(manager_address): raise ValueError('manager_address must be a valid address') check_address_has_code(jsonrpc_client, manager_address, 'Channel Manager') proxy = jsonrpc_client.new_contract_proxy( CONTRACT_MANAGER.get_contract_abi(CONTRACT_CHANNEL_MANAGER), address_encoder(manager_address), ) CONTRACT_MANAGER.check_contract_version( proxy.call('contract_version').decode(), CONTRACT_CHANNEL_MANAGER ) self.address = manager_address self.proxy = proxy self.client = jsonrpc_client self.poll_timeout = poll_timeout self.open_channel_transactions = dict()
def __init__( self, jsonrpc_client, registry_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): # pylint: disable=too-many-arguments contract = jsonrpc_client.new_contract( CONTRACT_MANAGER.get_contract_abi(CONTRACT_REGISTRY), address_encoder(registry_address), ) self.proxy = ContractProxy(jsonrpc_client, contract) if not is_binary_address(registry_address): raise ValueError('registry_address must be a valid address') check_address_has_code(jsonrpc_client, registry_address, 'Registry') CONTRACT_MANAGER.check_contract_version( self.proxy.contract.functions.contract_version().call(), CONTRACT_REGISTRY ) self.address = registry_address self.client = jsonrpc_client self.poll_timeout = poll_timeout self.node_address = privatekey_to_address(self.client.privkey) self.address_to_channelmanager = dict() self.token_to_channelmanager = dict()
def __init__( self, jsonrpc_client, discovery_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): contract = jsonrpc_client.new_contract( CONTRACT_MANAGER.get_contract_abi(CONTRACT_ENDPOINT_REGISTRY), to_normalized_address(discovery_address), ) self.proxy = ContractProxy(jsonrpc_client, contract) if not is_binary_address(discovery_address): raise ValueError('discovery_address must be a valid address') check_address_has_code(jsonrpc_client, discovery_address, 'Discovery') CONTRACT_MANAGER.check_contract_version( self.version(), CONTRACT_ENDPOINT_REGISTRY, ) self.address = discovery_address self.client = jsonrpc_client self.poll_timeout = poll_timeout self.not_found_address = NULL_ADDRESS
def __init__( self, jsonrpc_client, registry_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): # pylint: disable=too-many-arguments if not isaddress(registry_address): raise InvalidAddress( 'Expected binary address format for token network registry') check_address_has_code(jsonrpc_client, registry_address, CONTRACT_TOKEN_NETWORK_REGISTRY) proxy = jsonrpc_client.new_contract_proxy( CONTRACT_MANAGER.get_abi(CONTRACT_TOKEN_NETWORK_REGISTRY), address_encoder(registry_address), ) CONTRACT_MANAGER.check_contract_version( proxy.functions.contract_version().call(), CONTRACT_TOKEN_NETWORK_REGISTRY) self.address = registry_address self.proxy = proxy self.client = jsonrpc_client self.poll_timeout = poll_timeout self.node_address = privatekey_to_address(self.client.privkey) self.address_to_tokennetwork = dict() self.token_to_tokennetwork = dict()
def __init__( self, jsonrpc_client, manager_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): # pylint: disable=too-many-arguments if not isaddress(manager_address): raise InvalidAddress( 'Expected binary address format for token nework') check_address_has_code(jsonrpc_client, manager_address, 'Channel Manager') proxy = jsonrpc_client.new_contract_proxy( CONTRACT_MANAGER.get_abi(CONTRACT_TOKEN_NETWORK), address_encoder(manager_address), ) CONTRACT_MANAGER.check_contract_version( proxy.functions.contract_version().call(), CONTRACT_TOKEN_NETWORK) self.address = manager_address self.proxy = proxy self.client = jsonrpc_client self.node_address = privatekey_to_address(self.client.privkey) self.poll_timeout = poll_timeout # Prevents concurrent deposit, withdraw, close, or settle operations on the same channel self.channel_operations_lock = dict() self.open_channel_transactions = dict()
def __init__( self, jsonrpc_client, manager_address, poll_timeout=DEFAULT_POLL_TIMEOUT, ): # pylint: disable=too-many-arguments contract = jsonrpc_client.new_contract( CONTRACT_MANAGER.get_contract_abi(CONTRACT_CHANNEL_MANAGER), to_normalized_address(manager_address), ) self.proxy = ContractProxy(jsonrpc_client, contract) if not is_binary_address(manager_address): raise ValueError('manager_address must be a valid address') check_address_has_code(jsonrpc_client, manager_address, 'Channel Manager') CONTRACT_MANAGER.check_contract_version( self.version(), CONTRACT_CHANNEL_MANAGER, ) self.address = manager_address self.client = jsonrpc_client self.poll_timeout = poll_timeout self.open_channel_transactions = dict()
def __init__(self, jsonrpc_client, discovery_address, poll_timeout=DEFAULT_POLL_TIMEOUT): if not isaddress(discovery_address): raise ValueError('discovery_address must be a valid address') check_address_has_code(jsonrpc_client, discovery_address, 'Discovery') proxy = jsonrpc_client.new_contract_proxy( CONTRACT_MANAGER.get_contract_abi(CONTRACT_ENDPOINT_REGISTRY), address_encoder(discovery_address), ) CONTRACT_MANAGER.check_contract_version( proxy.call('contract_version').decode(), CONTRACT_ENDPOINT_REGISTRY) self.address = discovery_address self.proxy = proxy self.client = jsonrpc_client self.poll_timeout = poll_timeout self.not_found_address = NULL_ADDRESS