ContractPublisher
Methods
DEFAULT_ADMIN_ROLE
function DEFAULT_ADMIN_ROLE() external view returns (bytes32)
Returns
_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
_publisher
address
undefined
Returns
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
_publisher
address
undefined
_contractId
string
undefined
Returns
published
IContractPublisher.CustomContractInstance
undefined
getPublishedContractVersions
function getPublishedContractVersions(address _publisher, string _contractId) external view returns (struct IContractPublisher.CustomContractInstance[] published)
Returns all versions of a published contract.
Parameters
_publisher
address
undefined
_contractId
string
undefined
Returns
published
IContractPublisher.CustomContractInstance[]
undefined
getPublishedUriFromCompilerUri
function getPublishedUriFromCompilerUri(string compilerMetadataUri) external view returns (string[] publishedMetadataUris)
Retrieve the published metadata URI from a compiler metadata URI
Parameters
compilerMetadataUri
string
undefined
Returns
publishedMetadataUris
string[]
undefined
getPublisherProfileUri
function getPublisherProfileUri(address publisher) external view returns (string uri)
Get the publisher profile uri for a given publisher.
Parameters
publisher
address
undefined
Returns
uri
string
undefined
getRoleAdmin
function getRoleAdmin(bytes32 role) external view returns (bytes32)
Returns the admin role that controls role
. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.
Parameters
role
bytes32
undefined
Returns
_0
bytes32
undefined
getRoleMember
function getRoleMember(bytes32 role, uint256 index) external view returns (address)
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
role
bytes32
undefined
index
uint256
undefined
Returns
_0
address
undefined
getRoleMemberCount
function getRoleMemberCount(bytes32 role) external view returns (uint256)
Returns the number of accounts that have role
. Can be used together with {getRoleMember} to enumerate all bearers of a role.
Parameters
role
bytes32
undefined
Returns
_0
uint256
undefined
grantRole
function grantRole(bytes32 role, address account) external nonpayable
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
role
bytes32
undefined
account
address
undefined
hasRole
function hasRole(bytes32 role, address account) external view returns (bool)
Returns true
if account
has been granted role
.
Parameters
role
bytes32
undefined
account
address
undefined
Returns
_0
bool
undefined
isPaused
function isPaused() external view returns (bool)
Whether the contract publisher is paused.
Returns
_0
bool
undefined
isTrustedForwarder
function isTrustedForwarder(address forwarder) external view returns (bool)
Parameters
forwarder
address
undefined
Returns
_0
bool
undefined
multicall
function multicall(bytes[] data) external nonpayable returns (bytes[] results)
Receives and executes a batch of function calls on this contract.
Parameters
data
bytes[]
undefined
Returns
results
bytes[]
undefined
prevPublisher
function prevPublisher() external view returns (contract IContractPublisher)
Returns
_0
contract IContractPublisher
undefined
publishContract
function publishContract(address _publisher, string _contractId, string _publishMetadataUri, string _compilerMetadataUri, bytes32 _bytecodeHash, address _implementation) external nonpayable
Let's an account publish a contract.
Parameters
_publisher
address
undefined
_contractId
string
undefined
_publishMetadataUri
string
undefined
_compilerMetadataUri
string
undefined
_bytecodeHash
bytes32
undefined
_implementation
address
undefined
renounceRole
function renounceRole(bytes32 role, address account) external nonpayable
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
role
bytes32
undefined
account
address
undefined
revokeRole
function revokeRole(bytes32 role, address account) external nonpayable
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
role
bytes32
undefined
account
address
undefined
setPause
function setPause(bool _pause) external nonpayable
Lets a contract admin pause the registry.
Parameters
_pause
bool
undefined
setPublisherProfileUri
function setPublisherProfileUri(address publisher, string uri) external nonpayable
Lets an account set its own publisher profile uri
Parameters
publisher
address
undefined
uri
string
undefined
supportsInterface
function supportsInterface(bytes4 interfaceId) external view returns (bool)
See {IERC165-supportsInterface}.
Parameters
interfaceId
bytes4
undefined
Returns
_0
bool
undefined
unpublishContract
function unpublishContract(address _publisher, string _contractId) external nonpayable
Lets a publisher unpublish a contract and all its versions.
Parameters
_publisher
address
undefined
_contractId
string
undefined
Events
ContractPublished
event ContractPublished(address indexed operator, address indexed publisher, IContractPublisher.CustomContractInstance publishedContract)
Parameters
operator indexed
address
undefined
publisher indexed
address
undefined
publishedContract
IContractPublisher.CustomContractInstance
undefined
ContractUnpublished
event ContractUnpublished(address indexed operator, address indexed publisher, string indexed contractId)
Parameters
operator indexed
address
undefined
publisher indexed
address
undefined
contractId indexed
string
undefined
Paused
event Paused(bool isPaused)
Parameters
isPaused
bool
undefined
PublisherProfileUpdated
event PublisherProfileUpdated(address indexed publisher, string prevURI, string newURI)
Parameters
publisher indexed
address
undefined
prevURI
string
undefined
newURI
string
undefined
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
Parameters
role indexed
bytes32
undefined
previousAdminRole indexed
bytes32
undefined
newAdminRole indexed
bytes32
undefined
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
Last updated