Exemplo n.º 1
0
def deploy_service_registry(
    token_deploy_result: Callable[[], Contract],
    deploy_client: JSONRPCClient,
    contract_manager: ContractManager,
    proxy_manager: ProxyManager,
) -> ServiceRegistry:
    token_contract = token_deploy_result()
    contract, receipt = deploy_client.deploy_single_contract(
        contract_name=CONTRACT_SERVICE_REGISTRY,
        contract=contract_manager.get_contract(CONTRACT_SERVICE_REGISTRY),
        constructor_parameters=(
            token_contract.address,
            EMPTY_ADDRESS,
            int(500e18),
            6,
            5,
            180 * SECONDS_PER_DAY,
            1000,
            200 * SECONDS_PER_DAY,
        ),
    )

    return proxy_manager.service_registry(
        ServiceRegistryAddress(to_canonical_address(contract.address)),
        BlockNumber(receipt["blockNumber"]),
    )
Exemplo n.º 2
0
 def service_registry_address(
         self,
         block_identifier: BlockSpecification) -> ServiceRegistryAddress:
     return ServiceRegistryAddress(
         to_canonical_address(
             self.proxy.contract.functions.service_registry().call(
                 block_identifier=block_identifier)))
Exemplo n.º 3
0
def load_deployment_addresses_from_contracts(
        contracts: Dict[str, Any]) -> DeploymentAddresses:
    return DeploymentAddresses(
        token_network_registry_address=TokenNetworkRegistryAddress(
            to_canonical_address(
                contracts[CONTRACT_TOKEN_NETWORK_REGISTRY]["address"])),
        secret_registry_address=SecretRegistryAddress(
            to_canonical_address(
                contracts[CONTRACT_SECRET_REGISTRY]["address"])),
        user_deposit_address=UserDepositAddress(
            to_canonical_address(contracts[CONTRACT_USER_DEPOSIT]["address"])),
        service_registry_address=ServiceRegistryAddress(
            to_canonical_address(
                contracts[CONTRACT_SERVICE_REGISTRY]["address"])),
        monitoring_service_address=MonitoringServiceAddress(
            to_canonical_address(
                contracts[CONTRACT_MONITORING_SERVICE]["address"])),
        one_to_n_address=OneToNAddress(
            to_canonical_address(contracts[CONTRACT_ONE_TO_N]["address"])),
    )