Esempio n. 1
0
    def register_token(
        self,
        registry_address_hex: typing.AddressHex,
        token_address_hex: typing.AddressHex,
        retry_timeout: typing.NetworkTimeout = DEFAULT_RETRY_TIMEOUT,
    ) -> TokenNetwork:
        """ Register a token with the raiden token manager.

        Args:
            registry_address: registry address
            token_address_hex (string): a hex encoded token address.

        Returns:

            The token network proxy.
        """
        registry_address = safe_address_decode(registry_address_hex)
        token_address = safe_address_decode(token_address_hex)

        registry = self._raiden.chain.token_network_registry(registry_address)
        token_network_address = registry.add_token(token_address)

        # Register the channel manager with the raiden registry
        waiting.wait_for_payment_network(
            self._raiden,
            registry.address,
            token_address,
            retry_timeout,
        )

        return self._raiden.chain.token_network(token_network_address)
Esempio n. 2
0
    def register_token(
            self,
            registry_address_hex: typing.AddressHex,
            token_address_hex: typing.AddressHex,
            retry_timeout: typing.NetworkTimeout = DEFAULT_RETRY_TIMEOUT,
    ) -> TokenNetwork:
        """ Register a token with the raiden token manager.

        Args:
            registry_address: registry address
            token_address_hex (string): a hex encoded token address.

        Returns:

            The token network proxy.
        """
        registry_address = decode_hex(registry_address_hex)
        token_address = decode_hex(token_address_hex)

        registry = self._raiden.chain.token_network_registry(registry_address)
        token_network_address = registry.add_token(token_address)

        # Register the channel manager with the raiden registry
        waiting.wait_for_payment_network(
            self._raiden,
            registry.address,
            token_address,
            retry_timeout,
        )

        return self._raiden.chain.token_network(token_network_address)
Esempio n. 3
0
    def register_token(self, registry_address_hex, token_address_hex):
        """ Register a token with the raiden token manager.

        Args:
            registry_address: registry address
            token_address_hex (string): a hex encoded token address.

        Returns:
            channel_manager: the channel_manager contract_proxy.
        """

        registry = self._raiden.chain.registry(registry_address_hex)

        # Add the ERC20 token to the raiden registry
        token_address = safe_address_decode(token_address_hex)
        registry.add_token(token_address)

        # Obtain the channel manager for the token
        channel_manager = registry.manager_by_token(token_address)

        # Register the channel manager with the raiden registry
        waiting.wait_for_payment_network(
            self._raiden,
            registry.address,
            token_address,
            settings.DEFAULT_EVENTS_POLL_TIMEOUT,
        )

        return channel_manager
Esempio n. 4
0
    def register_token(
        self,
        registry_address_hex: typing.AddressHex,
        token_address_hex: typing.AddressHex,
        retry_timeout: typing.NetworkTimeout = DEFAULT_RETRY_TIMEOUT,
    ) -> TokenNetwork:
        """ Register a token with the raiden token manager.

        Args:
            registry_address: registry address
            token_address_hex (string): a hex encoded token address.

        Returns:

            The token network proxy.
        """
        registry_address = decode_hex(registry_address_hex)
        token_address = decode_hex(token_address_hex)

        registry = self._raiden.chain.token_network_registry(registry_address)
        # LEFTODO: Supply a proper block id
        token_network_address = registry.add_token(
            token_address=token_address,
            given_block_identifier='latest',
        )

        # Register the channel manager with the raiden registry
        waiting.wait_for_payment_network(
            self._raiden,
            registry.address,
            token_address,
            retry_timeout,
        )

        return self._raiden.chain.token_network(token_network_address)
Esempio n. 5
0
def wait_for_token_networks(
    raiden_apps,
    token_network_registry_address,
    token_addresses,
    retry_timeout=DEFAULT_RETRY_TIMEOUT,
):
    for token_address in token_addresses:
        for app in raiden_apps:
            wait_for_payment_network(
                app.raiden, token_network_registry_address, token_address, retry_timeout
            )
Esempio n. 6
0
def wait_for_token_networks(
        raiden_apps,
        token_network_registry_address,
        token_addresses,
        retry_timeout=DEFAULT_RETRY_TIMEOUT,
):
    for token_address in token_addresses:
        for app in raiden_apps:
            wait_for_payment_network(
                app.raiden,
                token_network_registry_address,
                token_address,
                retry_timeout,
            )
Esempio n. 7
0
    def register_token(
        self,
        registry_address_hex: typing.AddressHex,
        token_address_hex: typing.AddressHex,
        retry_timeout: typing.NetworkTimeout = DEFAULT_RETRY_TIMEOUT,
    ) -> TokenNetwork:
        """ Register a token with the raiden token manager.

        Args:
            registry_address: registry address
            token_address_hex (string): a hex encoded token address.

        Returns:

            The token network proxy.
        """
        registry_address = decode_hex(registry_address_hex)
        token_address = decode_hex(token_address_hex)

        registry = self._raiden.chain.token_network_registry(registry_address)
        contracts_version = self._raiden.contract_manager.contracts_version

        if contracts_version == DEVELOPMENT_CONTRACT_VERSION:
            token_network_address = registry.add_token_with_limits(
                token_address=token_address,
                channel_participant_deposit_limit=UINT256_MAX,
                token_network_deposit_limit=UINT256_MAX,
            )
        else:
            token_network_address = registry.add_token_without_limits(
                token_address=token_address, )

        # Register the channel manager with the raiden registry
        waiting.wait_for_payment_network(
            self._raiden,
            registry.address,
            token_address,
            retry_timeout,
        )

        return self._raiden.chain.token_network(token_network_address)