Proxy Contract

Address

Address : (not yet deployed) on Klaytn Blockchain Main-net

Summary

Proxy contracts define contracts in Otherworld

  • Defines the 'contract type' details.

    • Defines the type name.

    • A contract type can contain multiple contracts.

  • Defines the 'contract' details.

    • Contracts are included in one contract type.

    • Defines the version.

    • Defines the contract address.

Data

Base

Name
Type

Created Timestamp

Uint

Contract Type

Name
Type

ID

Uint

Name

String

Contract

Name
Type

ID

Uint

Type ID

Uint

Version

Uint

Contract

Address

Created Timestmap

Uint

Event

Contract Added

Name
Type

Type ID

Uint

Version

Uint

OWContract

Address

Interface

interface IOWProxy {
    function addContractType(string calldata _type) external;

    function setContractType(uint256 _typeId, string calldata _type) external;

    function removeContractType(uint256 _typeId) external;

    function isExistContractTypeById(uint256 _typeId)
        external
        view
        returns (bool);

    function isExistContractType(string calldata _type)
        external
        view
        returns (bool);

    function getContractTypeId(string calldata _type)
        external
        view
        returns (uint256);

    function getContractTypeById(uint256 _typeId)
        external
        view
        returns (string memory);

    function getContractTypeIds() external view returns (uint256[] memory);

    function getContractTypes() external view returns (string[] memory);

    function addContract(uint256 _typeId, address _OWContract) external;

    function setContract(
        uint256 _typeId,
        uint256 _version,
        address _OWContract
    ) external;

    function removeLatestContract(uint256 _typeId) external;

    function getOWContractByTypeId(uint256 _typeId, uint256 _version)
        external
        view
        returns (address);

    function isValidVersion(uint256 _typeId, uint256 _version)
        external
        view
        returns (bool);

    function getLatestVersion(uint256 _typeId) external view returns (uint256);

    function getOWContractByType(string calldata _type, uint256 _version)
        external
        view
        returns (address);

    function getContractOfType(uint256 _typeId)
        external
        view
        returns (address[] memory);
}

Last updated