ContractPublisher

Methods

DEFAULT_ADMIN_ROLE

function DEFAULT_ADMIN_ROLE() external view returns (bytes32)

Returns

Name
Type
Description

_0

bytes32

undefined

getAllPublishedContracts

function getAllPublishedContracts(address _publisher) external view returns (struct IContractPublisher.CustomContractInstance[] published)

Returns the latest version of all contracts published by a publisher.

Parameters

Name
Type
Description

_publisher

address

undefined

Returns

Name
Type
Description

published

IContractPublisher.CustomContractInstance[]

undefined

getPublishedContract

function getPublishedContract(address _publisher, string _contractId) external view returns (struct IContractPublisher.CustomContractInstance published)

Returns the latest version of a contract published by a publisher.

Parameters

Name
Type
Description

_publisher

address

undefined

_contractId

string

undefined

Returns

Name
Type
Description

published

IContractPublisher.CustomContractInstance

undefined

getPublishedContractVersions

Returns all versions of a published contract.

Parameters

Name
Type
Description

_publisher

address

undefined

_contractId

string

undefined

Returns

Name
Type
Description

published

IContractPublisher.CustomContractInstance[]

undefined

getPublishedUriFromCompilerUri

Retrieve the published metadata URI from a compiler metadata URI

Parameters

Name
Type
Description

compilerMetadataUri

string

undefined

Returns

Name
Type
Description

publishedMetadataUris

string[]

undefined

getPublisherProfileUri

Get the publisher profile uri for a given publisher.

Parameters

Name
Type
Description

publisher

address

undefined

Returns

Name
Type
Description

uri

string

undefined

getRoleAdmin

Returns the admin role that controls role. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.

Parameters

Name
Type
Description

role

bytes32

undefined

Returns

Name
Type
Description

_0

bytes32

undefined

getRoleMember

Returns one of the accounts that have role. index must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.

Parameters

Name
Type
Description

role

bytes32

undefined

index

uint256

undefined

Returns

Name
Type
Description

_0

address

undefined

getRoleMemberCount

Returns the number of accounts that have role. Can be used together with {getRoleMember} to enumerate all bearers of a role.

Parameters

Name
Type
Description

role

bytes32

undefined

Returns

Name
Type
Description

_0

uint256

undefined

grantRole

Grants role to account. If account had not been already granted role, emits a {RoleGranted} event. Requirements: - the caller must have role's admin role. May emit a {RoleGranted} event.

Parameters

Name
Type
Description

role

bytes32

undefined

account

address

undefined

hasRole

Returns true if account has been granted role.

Parameters

Name
Type
Description

role

bytes32

undefined

account

address

undefined

Returns

Name
Type
Description

_0

bool

undefined

isPaused

Whether the contract publisher is paused.

Returns

Name
Type
Description

_0

bool

undefined

isTrustedForwarder

Parameters

Name
Type
Description

forwarder

address

undefined

Returns

Name
Type
Description

_0

bool

undefined

multicall

Receives and executes a batch of function calls on this contract.

Parameters

Name
Type
Description

data

bytes[]

undefined

Returns

Name
Type
Description

results

bytes[]

undefined

prevPublisher

Returns

Name
Type
Description

_0

contract IContractPublisher

undefined

publishContract

Let's an account publish a contract.

Parameters

Name
Type
Description

_publisher

address

undefined

_contractId

string

undefined

_publishMetadataUri

string

undefined

_compilerMetadataUri

string

undefined

_bytecodeHash

bytes32

undefined

_implementation

address

undefined

renounceRole

Revokes role from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked role, emits a {RoleRevoked} event. Requirements: - the caller must be account. May emit a {RoleRevoked} event.

Parameters

Name
Type
Description

role

bytes32

undefined

account

address

undefined

revokeRole

Revokes role from account. If account had been granted role, emits a {RoleRevoked} event. Requirements: - the caller must have role's admin role. May emit a {RoleRevoked} event.

Parameters

Name
Type
Description

role

bytes32

undefined

account

address

undefined

setPause

Lets a contract admin pause the registry.

Parameters

Name
Type
Description

_pause

bool

undefined

setPublisherProfileUri

Lets an account set its own publisher profile uri

Parameters

Name
Type
Description

publisher

address

undefined

uri

string

undefined

supportsInterface

See {IERC165-supportsInterface}.

Parameters

Name
Type
Description

interfaceId

bytes4

undefined

Returns

Name
Type
Description

_0

bool

undefined

unpublishContract

Lets a publisher unpublish a contract and all its versions.

Parameters

Name
Type
Description

_publisher

address

undefined

_contractId

string

undefined

Events

ContractPublished

Parameters

Name
Type
Description

operator indexed

address

undefined

publisher indexed

address

undefined

publishedContract

IContractPublisher.CustomContractInstance

undefined

ContractUnpublished

Parameters

Name
Type
Description

operator indexed

address

undefined

publisher indexed

address

undefined

contractId indexed

string

undefined

Paused

Parameters

Name
Type
Description

isPaused

bool

undefined

PublisherProfileUpdated

Parameters

Name
Type
Description

publisher indexed

address

undefined

prevURI

string

undefined

newURI

string

undefined

RoleAdminChanged

Parameters

Name
Type
Description

role indexed

bytes32

undefined

previousAdminRole indexed

bytes32

undefined

newAdminRole indexed

bytes32

undefined

RoleGranted

Parameters

Name
Type
Description

role indexed

bytes32

undefined

account indexed

address

undefined

sender indexed

address

undefined

RoleRevoked

Parameters

Name
Type
Description

role indexed

bytes32

undefined

account indexed

address

undefined

sender indexed

address

undefined

Last updated