Documentation
¶
Overview ¶
Package container contains RPC wrappers for NeoFS Container contract.
Index ¶
- Constants
- type Actor
- type ContainerContainer
- type ContainerContainerSizes
- type ContainerEstimation
- type ContainerExtendedACL
- type ContainerNodeReport
- type ContainerNodeReportSummary
- type ContainerQuota
- type ContainerQuotaSetEvent
- type Contract
- func (c *Contract) AddNextEpochNodes(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (util.Uint256, uint32, error)
- func (c *Contract) AddNextEpochNodesTransaction(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (*transaction.Transaction, error)
- func (c *Contract) AddNextEpochNodesUnsigned(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (*transaction.Transaction, error)
- func (c *Contract) CommitContainerListUpdate(cID util.Uint256, replicas []byte) (util.Uint256, uint32, error)
- func (c *Contract) CommitContainerListUpdateTransaction(cID util.Uint256, replicas []byte) (*transaction.Transaction, error)
- func (c *Contract) CommitContainerListUpdateUnsigned(cID util.Uint256, replicas []byte) (*transaction.Transaction, error)
- func (c *Contract) Create(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, ...) (util.Uint256, uint32, error)
- func (c *Contract) CreateTransaction(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) CreateUnsigned(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) Delete(containerID []byte, signature []byte, token []byte) (util.Uint256, uint32, error)
- func (c *Contract) DeleteTransaction(containerID []byte, signature []byte, token []byte) (*transaction.Transaction, error)
- func (c *Contract) DeleteUnsigned(containerID []byte, signature []byte, token []byte) (*transaction.Transaction, error)
- func (c *Contract) NewEpoch(epochNum *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) NewEpochTransaction(epochNum *big.Int) (*transaction.Transaction, error)
- func (c *Contract) NewEpochUnsigned(epochNum *big.Int) (*transaction.Transaction, error)
- func (c *Contract) Put(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (util.Uint256, uint32, error)
- func (c *Contract) Put2(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (util.Uint256, uint32, error)
- func (c *Contract) Put2Transaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) Put2Unsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) Put3(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (util.Uint256, uint32, error)
- func (c *Contract) Put3Transaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) Put3Unsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) PutContainerSize(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (util.Uint256, uint32, error)
- func (c *Contract) PutContainerSizeTransaction(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) PutContainerSizeUnsigned(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
- func (c *Contract) PutEACL(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (util.Uint256, uint32, error)
- func (c *Contract) PutEACLTransaction(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
- func (c *Contract) PutEACLUnsigned(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
- func (c *Contract) PutNamed(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (util.Uint256, uint32, error)
- func (c *Contract) PutNamedTransaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) PutNamedUnsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, ...) (*transaction.Transaction, error)
- func (c *Contract) PutReport(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, ...) (util.Uint256, uint32, error)
- func (c *Contract) PutReportTransaction(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, ...) (*transaction.Transaction, error)
- func (c *Contract) PutReportUnsigned(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, ...) (*transaction.Transaction, error)
- func (c *Contract) PutTransaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
- func (c *Contract) PutUnsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
- func (c *Contract) Remove(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (util.Uint256, uint32, error)
- func (c *Contract) RemoveTransaction(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
- func (c *Contract) RemoveUnsigned(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
- func (c *Contract) SetEACL(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (util.Uint256, uint32, error)
- func (c *Contract) SetEACLTransaction(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
- func (c *Contract) SetEACLUnsigned(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
- func (c *Contract) SetHardContainerQuota(cID util.Uint256, size *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) SetHardContainerQuotaTransaction(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetHardContainerQuotaUnsigned(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetHardUserQuota(user []byte, size *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) SetHardUserQuotaTransaction(user []byte, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetHardUserQuotaUnsigned(user []byte, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetSoftContainerQuota(cID util.Uint256, size *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) SetSoftContainerQuotaTransaction(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetSoftContainerQuotaUnsigned(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetSoftUserQuota(user []byte, size *big.Int) (util.Uint256, uint32, error)
- func (c *Contract) SetSoftUserQuotaTransaction(user []byte, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SetSoftUserQuotaUnsigned(user []byte, size *big.Int) (*transaction.Transaction, error)
- func (c *Contract) SubmitObjectPut(metaInformation []byte, sigs [][][]byte) (util.Uint256, uint32, error)
- func (c *Contract) SubmitObjectPutTransaction(metaInformation []byte, sigs [][][]byte) (*transaction.Transaction, error)
- func (c *Contract) SubmitObjectPutUnsigned(metaInformation []byte, sigs [][][]byte) (*transaction.Transaction, error)
- func (c *Contract) Update(nefFile []byte, manifest []byte, data any) (util.Uint256, uint32, error)
- func (c *Contract) UpdateTransaction(nefFile []byte, manifest []byte, data any) (*transaction.Transaction, error)
- func (c *Contract) UpdateUnsigned(nefFile []byte, manifest []byte, data any) (*transaction.Transaction, error)
- type ContractReader
- func (c *ContractReader) Alias(cid []byte) (string, error)
- func (c *ContractReader) ContainerQuota(cID util.Uint256) (*ContainerQuota, error)
- func (c *ContractReader) ContainersOf(owner []byte) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) ContainersOfExpanded(owner []byte, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) Count() (*big.Int, error)
- func (c *ContractReader) EACL(containerID []byte) (*ContainerExtendedACL, error)
- func (c *ContractReader) Get(containerID []byte) (*ContainerContainer, error)
- func (c *ContractReader) GetContainerData(id []byte) ([]byte, error)
- func (c *ContractReader) GetContainerSize(id []byte) (*ContainerContainerSizes, error)
- func (c *ContractReader) GetEACLData(id []byte) ([]byte, error)
- func (c *ContractReader) GetNodeReportSummary(cid util.Uint256) (*ContainerNodeReportSummary, error)
- func (c *ContractReader) GetReportByNode(cid util.Uint256, pubKey *keys.PublicKey) (*ContainerNodeReport, error)
- func (c *ContractReader) GetTakenSpaceByUser(user []byte) (*big.Int, error)
- func (c *ContractReader) IterateAllContainerSizes(epoch *big.Int) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) IterateAllContainerSizesExpanded(epoch *big.Int, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) IterateAllReportSummaries() (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) IterateAllReportSummariesExpanded(_numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) IterateContainerSizes(epoch *big.Int, cid util.Uint256) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) IterateContainerSizesExpanded(epoch *big.Int, cid util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) IterateReports(cid util.Uint256) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) IterateReportsExpanded(cid util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) ListContainerSizes(epoch *big.Int) ([][]byte, error)
- func (c *ContractReader) Nodes(cID util.Uint256, placementVector *big.Int) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) NodesExpanded(cID util.Uint256, placementVector *big.Int, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) Owner(containerID []byte) ([]byte, error)
- func (c *ContractReader) ReplicasNumbers(cID util.Uint256) (uuid.UUID, result.Iterator, error)
- func (c *ContractReader) ReplicasNumbersExpanded(cID util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
- func (c *ContractReader) UserQuota(user []byte) (*ContainerQuota, error)
- func (c *ContractReader) VerifyPlacementSignatures(cid util.Uint256, msg []byte, sigs [][][]byte) (bool, error)
- func (c *ContractReader) Version() (*big.Int, error)
- type CreatedEvent
- type DeleteSuccessEvent
- type EACLChangedEvent
- type Invoker
- type NodesUpdateEvent
- type ObjectPutEvent
- type PutSuccessEvent
- type RemovedEvent
- type SetEACLSuccessEvent
- type UserQuotaSetEvent
Constants ¶
const ( // RegistrationFeeKey is a key in netmap config which contains fee for container registration. RegistrationFeeKey = containerconst.RegistrationFeeKey // AliasFeeKey is a key in netmap config which contains fee for nice-name registration. AliasFeeKey = containerconst.AliasFeeKey // NotFoundError is returned if container is missing. NotFoundError = containerconst.NotFoundError )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Actor ¶
type Actor interface {
Invoker
MakeCall(contract util.Uint160, method string, params ...any) (*transaction.Transaction, error)
MakeRun(script []byte) (*transaction.Transaction, error)
MakeUnsignedCall(contract util.Uint160, method string, attrs []transaction.Attribute, params ...any) (*transaction.Transaction, error)
MakeUnsignedRun(script []byte, attrs []transaction.Attribute) (*transaction.Transaction, error)
SendCall(contract util.Uint160, method string, params ...any) (util.Uint256, uint32, error)
SendRun(script []byte) (util.Uint256, uint32, error)
}
Actor is used by Contract to call state-changing methods.
type ContainerContainer ¶
ContainerContainer is a contract-specific container.Container type used by its methods.
func (*ContainerContainer) FromStackItem ¶
func (res *ContainerContainer) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerContainer from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerContainer) ToSCParameter ¶ added in v0.21.0
func (res *ContainerContainer) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerContainer. It implements smartcontract.Convertible interface so that ContainerContainer could be used with invokers.
func (*ContainerContainer) ToStackItem ¶ added in v0.21.0
func (res *ContainerContainer) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerContainer. It implements stackitem.Convertible interface.
type ContainerContainerSizes ¶
type ContainerContainerSizes struct {
CID []byte
Estimations []*ContainerEstimation
}
ContainerContainerSizes is a contract-specific container.ContainerSizes type used by its methods.
func (*ContainerContainerSizes) FromStackItem ¶
func (res *ContainerContainerSizes) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerContainerSizes from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerContainerSizes) ToSCParameter ¶ added in v0.21.0
func (res *ContainerContainerSizes) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerContainerSizes. It implements smartcontract.Convertible interface so that ContainerContainerSizes could be used with invokers.
func (*ContainerContainerSizes) ToStackItem ¶ added in v0.21.0
func (res *ContainerContainerSizes) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerContainerSizes. It implements stackitem.Convertible interface.
type ContainerEstimation ¶
ContainerEstimation is a contract-specific container.Estimation type used by its methods.
func (*ContainerEstimation) FromStackItem ¶
func (res *ContainerEstimation) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerEstimation from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerEstimation) ToSCParameter ¶ added in v0.21.0
func (res *ContainerEstimation) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerEstimation. It implements smartcontract.Convertible interface so that ContainerEstimation could be used with invokers.
func (*ContainerEstimation) ToStackItem ¶ added in v0.21.0
func (res *ContainerEstimation) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerEstimation. It implements stackitem.Convertible interface.
type ContainerExtendedACL ¶
ContainerExtendedACL is a contract-specific container.ExtendedACL type used by its methods.
func (*ContainerExtendedACL) FromStackItem ¶
func (res *ContainerExtendedACL) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerExtendedACL from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerExtendedACL) ToSCParameter ¶ added in v0.21.0
func (res *ContainerExtendedACL) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerExtendedACL. It implements smartcontract.Convertible interface so that ContainerExtendedACL could be used with invokers.
func (*ContainerExtendedACL) ToStackItem ¶ added in v0.21.0
func (res *ContainerExtendedACL) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerExtendedACL. It implements stackitem.Convertible interface.
type ContainerNodeReport ¶ added in v0.24.0
type ContainerNodeReport struct {
PublicKey *keys.PublicKey
ContainerSize *big.Int
NumberOfObjects *big.Int
NumberOfReports *big.Int
LastUpdateEpoch *big.Int
}
ContainerNodeReport is a contract-specific container.NodeReport type used by its methods.
func (*ContainerNodeReport) FromStackItem ¶ added in v0.24.0
func (res *ContainerNodeReport) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerNodeReport from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerNodeReport) ToSCParameter ¶ added in v0.24.0
func (res *ContainerNodeReport) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerNodeReport. It implements smartcontract.Convertible interface so that ContainerNodeReport could be used with invokers.
func (*ContainerNodeReport) ToStackItem ¶ added in v0.24.0
func (res *ContainerNodeReport) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerNodeReport. It implements stackitem.Convertible interface.
type ContainerNodeReportSummary ¶ added in v0.24.0
ContainerNodeReportSummary is a contract-specific container.NodeReportSummary type used by its methods.
func (*ContainerNodeReportSummary) FromStackItem ¶ added in v0.24.0
func (res *ContainerNodeReportSummary) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerNodeReportSummary from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerNodeReportSummary) ToSCParameter ¶ added in v0.24.0
func (res *ContainerNodeReportSummary) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerNodeReportSummary. It implements smartcontract.Convertible interface so that ContainerNodeReportSummary could be used with invokers.
func (*ContainerNodeReportSummary) ToStackItem ¶ added in v0.24.0
func (res *ContainerNodeReportSummary) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerNodeReportSummary. It implements stackitem.Convertible interface.
type ContainerQuota ¶ added in v0.24.0
ContainerQuota is a contract-specific container.Quota type used by its methods.
func (*ContainerQuota) FromStackItem ¶ added in v0.24.0
func (res *ContainerQuota) FromStackItem(item stackitem.Item) error
FromStackItem retrieves fields of ContainerQuota from the given stackitem.Item or returns an error if it's not possible to do to so. It implements stackitem.Convertible interface.
func (*ContainerQuota) ToSCParameter ¶ added in v0.24.0
func (res *ContainerQuota) ToSCParameter() (smartcontract.Parameter, error)
ToSCParameter creates smartcontract.Parameter representing ContainerQuota. It implements smartcontract.Convertible interface so that ContainerQuota could be used with invokers.
func (*ContainerQuota) ToStackItem ¶ added in v0.24.0
func (res *ContainerQuota) ToStackItem() (stackitem.Item, error)
ToStackItem creates stackitem.Item representing ContainerQuota. It implements stackitem.Convertible interface.
type ContainerQuotaSetEvent ¶ added in v0.24.0
ContainerQuotaSetEvent represents "ContainerQuotaSet" event emitted by the contract.
func ContainerQuotaSetEventsFromApplicationLog ¶ added in v0.24.0
func ContainerQuotaSetEventsFromApplicationLog(log *result.ApplicationLog) ([]*ContainerQuotaSetEvent, error)
ContainerQuotaSetEventsFromApplicationLog retrieves a set of all emitted events with "ContainerQuotaSet" name from the provided result.ApplicationLog.
func (*ContainerQuotaSetEvent) FromStackItem ¶ added in v0.24.0
func (e *ContainerQuotaSetEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to ContainerQuotaSetEvent or returns an error if it's not possible to do to so.
type Contract ¶
type Contract struct {
ContractReader
// contains filtered or unexported fields
}
Contract implements all contract methods.
func (*Contract) AddNextEpochNodes ¶ added in v0.21.0
func (c *Contract) AddNextEpochNodes(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (util.Uint256, uint32, error)
AddNextEpochNodes creates a transaction invoking `addNextEpochNodes` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) AddNextEpochNodesTransaction ¶ added in v0.21.0
func (c *Contract) AddNextEpochNodesTransaction(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (*transaction.Transaction, error)
AddNextEpochNodesTransaction creates a transaction invoking `addNextEpochNodes` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) AddNextEpochNodesUnsigned ¶ added in v0.21.0
func (c *Contract) AddNextEpochNodesUnsigned(cID util.Uint256, placementVector *big.Int, publicKeys keys.PublicKeys) (*transaction.Transaction, error)
AddNextEpochNodesUnsigned creates a transaction invoking `addNextEpochNodes` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) CommitContainerListUpdate ¶ added in v0.21.0
func (c *Contract) CommitContainerListUpdate(cID util.Uint256, replicas []byte) (util.Uint256, uint32, error)
CommitContainerListUpdate creates a transaction invoking `commitContainerListUpdate` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) CommitContainerListUpdateTransaction ¶ added in v0.21.0
func (c *Contract) CommitContainerListUpdateTransaction(cID util.Uint256, replicas []byte) (*transaction.Transaction, error)
CommitContainerListUpdateTransaction creates a transaction invoking `commitContainerListUpdate` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) CommitContainerListUpdateUnsigned ¶ added in v0.21.0
func (c *Contract) CommitContainerListUpdateUnsigned(cID util.Uint256, replicas []byte) (*transaction.Transaction, error)
CommitContainerListUpdateUnsigned creates a transaction invoking `commitContainerListUpdate` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Create ¶ added in v0.22.0
func (c *Contract) Create(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, name string, zone string, metaOnChain bool) (util.Uint256, uint32, error)
Create creates a transaction invoking `create` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) CreateTransaction ¶ added in v0.22.0
func (c *Contract) CreateTransaction(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, name string, zone string, metaOnChain bool) (*transaction.Transaction, error)
CreateTransaction creates a transaction invoking `create` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) CreateUnsigned ¶ added in v0.22.0
func (c *Contract) CreateUnsigned(cnr []byte, invocScript []byte, verifScript []byte, sessionToken []byte, name string, zone string, metaOnChain bool) (*transaction.Transaction, error)
CreateUnsigned creates a transaction invoking `create` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Delete ¶
func (c *Contract) Delete(containerID []byte, signature []byte, token []byte) (util.Uint256, uint32, error)
Delete creates a transaction invoking `delete` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) DeleteTransaction ¶
func (c *Contract) DeleteTransaction(containerID []byte, signature []byte, token []byte) (*transaction.Transaction, error)
DeleteTransaction creates a transaction invoking `delete` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) DeleteUnsigned ¶
func (c *Contract) DeleteUnsigned(containerID []byte, signature []byte, token []byte) (*transaction.Transaction, error)
DeleteUnsigned creates a transaction invoking `delete` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) NewEpoch ¶
NewEpoch creates a transaction invoking `newEpoch` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) NewEpochTransaction ¶
func (c *Contract) NewEpochTransaction(epochNum *big.Int) (*transaction.Transaction, error)
NewEpochTransaction creates a transaction invoking `newEpoch` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) NewEpochUnsigned ¶
func (c *Contract) NewEpochUnsigned(epochNum *big.Int) (*transaction.Transaction, error)
NewEpochUnsigned creates a transaction invoking `newEpoch` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Put ¶
func (c *Contract) Put(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (util.Uint256, uint32, error)
Put creates a transaction invoking `put` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) Put2 ¶ added in v0.21.0
func (c *Contract) Put2(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string, metaOnChain bool) (util.Uint256, uint32, error)
Put2 creates a transaction invoking `put` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) Put2Transaction ¶ added in v0.21.0
func (c *Contract) Put2Transaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string, metaOnChain bool) (*transaction.Transaction, error)
Put2Transaction creates a transaction invoking `put` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) Put2Unsigned ¶ added in v0.21.0
func (c *Contract) Put2Unsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string, metaOnChain bool) (*transaction.Transaction, error)
Put2Unsigned creates a transaction invoking `put` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Put3 ¶ added in v0.21.0
func (c *Contract) Put3(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (util.Uint256, uint32, error)
Put3 creates a transaction invoking `put` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) Put3Transaction ¶ added in v0.21.0
func (c *Contract) Put3Transaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (*transaction.Transaction, error)
Put3Transaction creates a transaction invoking `put` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) Put3Unsigned ¶ added in v0.21.0
func (c *Contract) Put3Unsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (*transaction.Transaction, error)
Put3Unsigned creates a transaction invoking `put` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) PutContainerSize ¶
func (c *Contract) PutContainerSize(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (util.Uint256, uint32, error)
PutContainerSize creates a transaction invoking `putContainerSize` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) PutContainerSizeTransaction ¶
func (c *Contract) PutContainerSizeTransaction(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
PutContainerSizeTransaction creates a transaction invoking `putContainerSize` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) PutContainerSizeUnsigned ¶
func (c *Contract) PutContainerSizeUnsigned(epoch *big.Int, cid []byte, usedSize *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
PutContainerSizeUnsigned creates a transaction invoking `putContainerSize` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) PutEACL ¶ added in v0.22.0
func (c *Contract) PutEACL(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (util.Uint256, uint32, error)
PutEACL creates a transaction invoking `putEACL` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) PutEACLTransaction ¶ added in v0.22.0
func (c *Contract) PutEACLTransaction(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
PutEACLTransaction creates a transaction invoking `putEACL` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) PutEACLUnsigned ¶ added in v0.22.0
func (c *Contract) PutEACLUnsigned(eACL []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
PutEACLUnsigned creates a transaction invoking `putEACL` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) PutNamed ¶
func (c *Contract) PutNamed(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (util.Uint256, uint32, error)
PutNamed creates a transaction invoking `putNamed` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) PutNamedTransaction ¶
func (c *Contract) PutNamedTransaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (*transaction.Transaction, error)
PutNamedTransaction creates a transaction invoking `putNamed` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) PutNamedUnsigned ¶
func (c *Contract) PutNamedUnsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte, name string, zone string) (*transaction.Transaction, error)
PutNamedUnsigned creates a transaction invoking `putNamed` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) PutReport ¶ added in v0.24.0
func (c *Contract) PutReport(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, pubKey *keys.PublicKey) (util.Uint256, uint32, error)
PutReport creates a transaction invoking `putReport` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) PutReportTransaction ¶ added in v0.24.0
func (c *Contract) PutReportTransaction(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
PutReportTransaction creates a transaction invoking `putReport` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) PutReportUnsigned ¶ added in v0.24.0
func (c *Contract) PutReportUnsigned(cid util.Uint256, sizeBytes *big.Int, objsNumber *big.Int, pubKey *keys.PublicKey) (*transaction.Transaction, error)
PutReportUnsigned creates a transaction invoking `putReport` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) PutTransaction ¶
func (c *Contract) PutTransaction(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
PutTransaction creates a transaction invoking `put` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) PutUnsigned ¶
func (c *Contract) PutUnsigned(container []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
PutUnsigned creates a transaction invoking `put` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Remove ¶ added in v0.22.0
func (c *Contract) Remove(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (util.Uint256, uint32, error)
Remove creates a transaction invoking `remove` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) RemoveTransaction ¶ added in v0.22.0
func (c *Contract) RemoveTransaction(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
RemoveTransaction creates a transaction invoking `remove` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) RemoveUnsigned ¶ added in v0.22.0
func (c *Contract) RemoveUnsigned(id []byte, invocScript []byte, verifScript []byte, sessionToken []byte) (*transaction.Transaction, error)
RemoveUnsigned creates a transaction invoking `remove` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetEACL ¶
func (c *Contract) SetEACL(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (util.Uint256, uint32, error)
SetEACL creates a transaction invoking `setEACL` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetEACLTransaction ¶
func (c *Contract) SetEACLTransaction(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
SetEACLTransaction creates a transaction invoking `setEACL` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetEACLUnsigned ¶
func (c *Contract) SetEACLUnsigned(eACL []byte, signature []byte, publicKey *keys.PublicKey, token []byte) (*transaction.Transaction, error)
SetEACLUnsigned creates a transaction invoking `setEACL` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetHardContainerQuota ¶ added in v0.24.0
func (c *Contract) SetHardContainerQuota(cID util.Uint256, size *big.Int) (util.Uint256, uint32, error)
SetHardContainerQuota creates a transaction invoking `setHardContainerQuota` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetHardContainerQuotaTransaction ¶ added in v0.24.0
func (c *Contract) SetHardContainerQuotaTransaction(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
SetHardContainerQuotaTransaction creates a transaction invoking `setHardContainerQuota` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetHardContainerQuotaUnsigned ¶ added in v0.24.0
func (c *Contract) SetHardContainerQuotaUnsigned(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
SetHardContainerQuotaUnsigned creates a transaction invoking `setHardContainerQuota` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetHardUserQuota ¶ added in v0.24.0
SetHardUserQuota creates a transaction invoking `setHardUserQuota` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetHardUserQuotaTransaction ¶ added in v0.24.0
func (c *Contract) SetHardUserQuotaTransaction(user []byte, size *big.Int) (*transaction.Transaction, error)
SetHardUserQuotaTransaction creates a transaction invoking `setHardUserQuota` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetHardUserQuotaUnsigned ¶ added in v0.24.0
func (c *Contract) SetHardUserQuotaUnsigned(user []byte, size *big.Int) (*transaction.Transaction, error)
SetHardUserQuotaUnsigned creates a transaction invoking `setHardUserQuota` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetSoftContainerQuota ¶ added in v0.24.0
func (c *Contract) SetSoftContainerQuota(cID util.Uint256, size *big.Int) (util.Uint256, uint32, error)
SetSoftContainerQuota creates a transaction invoking `setSoftContainerQuota` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetSoftContainerQuotaTransaction ¶ added in v0.24.0
func (c *Contract) SetSoftContainerQuotaTransaction(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
SetSoftContainerQuotaTransaction creates a transaction invoking `setSoftContainerQuota` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetSoftContainerQuotaUnsigned ¶ added in v0.24.0
func (c *Contract) SetSoftContainerQuotaUnsigned(cID util.Uint256, size *big.Int) (*transaction.Transaction, error)
SetSoftContainerQuotaUnsigned creates a transaction invoking `setSoftContainerQuota` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SetSoftUserQuota ¶ added in v0.24.0
SetSoftUserQuota creates a transaction invoking `setSoftUserQuota` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SetSoftUserQuotaTransaction ¶ added in v0.24.0
func (c *Contract) SetSoftUserQuotaTransaction(user []byte, size *big.Int) (*transaction.Transaction, error)
SetSoftUserQuotaTransaction creates a transaction invoking `setSoftUserQuota` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SetSoftUserQuotaUnsigned ¶ added in v0.24.0
func (c *Contract) SetSoftUserQuotaUnsigned(user []byte, size *big.Int) (*transaction.Transaction, error)
SetSoftUserQuotaUnsigned creates a transaction invoking `setSoftUserQuota` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) SubmitObjectPut ¶ added in v0.21.0
func (c *Contract) SubmitObjectPut(metaInformation []byte, sigs [][][]byte) (util.Uint256, uint32, error)
SubmitObjectPut creates a transaction invoking `submitObjectPut` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) SubmitObjectPutTransaction ¶ added in v0.21.0
func (c *Contract) SubmitObjectPutTransaction(metaInformation []byte, sigs [][][]byte) (*transaction.Transaction, error)
SubmitObjectPutTransaction creates a transaction invoking `submitObjectPut` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) SubmitObjectPutUnsigned ¶ added in v0.21.0
func (c *Contract) SubmitObjectPutUnsigned(metaInformation []byte, sigs [][][]byte) (*transaction.Transaction, error)
SubmitObjectPutUnsigned creates a transaction invoking `submitObjectPut` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
func (*Contract) Update ¶
Update creates a transaction invoking `update` method of the contract. This transaction is signed and immediately sent to the network. The values returned are its hash, ValidUntilBlock value and error if any.
func (*Contract) UpdateTransaction ¶
func (c *Contract) UpdateTransaction(nefFile []byte, manifest []byte, data any) (*transaction.Transaction, error)
UpdateTransaction creates a transaction invoking `update` method of the contract. This transaction is signed, but not sent to the network, instead it's returned to the caller.
func (*Contract) UpdateUnsigned ¶
func (c *Contract) UpdateUnsigned(nefFile []byte, manifest []byte, data any) (*transaction.Transaction, error)
UpdateUnsigned creates a transaction invoking `update` method of the contract. This transaction is not signed, it's simply returned to the caller. Any fields of it that do not affect fees can be changed (ValidUntilBlock, Nonce), fee values (NetworkFee, SystemFee) can be increased as well.
type ContractReader ¶
type ContractReader struct {
// contains filtered or unexported fields
}
ContractReader implements safe contract methods.
func NewReader ¶
func NewReader(invoker Invoker, hash util.Uint160) *ContractReader
NewReader creates an instance of ContractReader using provided contract hash and the given Invoker.
func (*ContractReader) Alias ¶
func (c *ContractReader) Alias(cid []byte) (string, error)
Alias invokes `alias` method of contract.
func (*ContractReader) ContainerQuota ¶ added in v0.24.0
func (c *ContractReader) ContainerQuota(cID util.Uint256) (*ContainerQuota, error)
ContainerQuota invokes `containerQuota` method of contract.
func (*ContractReader) ContainersOf ¶
ContainersOf invokes `containersOf` method of contract.
func (*ContractReader) ContainersOfExpanded ¶
func (c *ContractReader) ContainersOfExpanded(owner []byte, _numOfIteratorItems int) ([]stackitem.Item, error)
ContainersOfExpanded is similar to ContainersOf (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) Count ¶
func (c *ContractReader) Count() (*big.Int, error)
Count invokes `count` method of contract.
func (*ContractReader) EACL ¶
func (c *ContractReader) EACL(containerID []byte) (*ContainerExtendedACL, error)
EACL invokes `eACL` method of contract.
func (*ContractReader) Get ¶
func (c *ContractReader) Get(containerID []byte) (*ContainerContainer, error)
Get invokes `get` method of contract.
func (*ContractReader) GetContainerData ¶ added in v0.22.0
func (c *ContractReader) GetContainerData(id []byte) ([]byte, error)
GetContainerData invokes `getContainerData` method of contract.
func (*ContractReader) GetContainerSize ¶
func (c *ContractReader) GetContainerSize(id []byte) (*ContainerContainerSizes, error)
GetContainerSize invokes `getContainerSize` method of contract.
func (*ContractReader) GetEACLData ¶ added in v0.22.0
func (c *ContractReader) GetEACLData(id []byte) ([]byte, error)
GetEACLData invokes `getEACLData` method of contract.
func (*ContractReader) GetNodeReportSummary ¶ added in v0.24.0
func (c *ContractReader) GetNodeReportSummary(cid util.Uint256) (*ContainerNodeReportSummary, error)
GetNodeReportSummary invokes `getNodeReportSummary` method of contract.
func (*ContractReader) GetReportByNode ¶ added in v0.24.0
func (c *ContractReader) GetReportByNode(cid util.Uint256, pubKey *keys.PublicKey) (*ContainerNodeReport, error)
GetReportByNode invokes `getReportByNode` method of contract.
func (*ContractReader) GetTakenSpaceByUser ¶ added in v0.24.0
func (c *ContractReader) GetTakenSpaceByUser(user []byte) (*big.Int, error)
GetTakenSpaceByUser invokes `getTakenSpaceByUser` method of contract.
func (*ContractReader) IterateAllContainerSizes ¶
func (c *ContractReader) IterateAllContainerSizes(epoch *big.Int) (uuid.UUID, result.Iterator, error)
IterateAllContainerSizes invokes `iterateAllContainerSizes` method of contract.
func (*ContractReader) IterateAllContainerSizesExpanded ¶
func (c *ContractReader) IterateAllContainerSizesExpanded(epoch *big.Int, _numOfIteratorItems int) ([]stackitem.Item, error)
IterateAllContainerSizesExpanded is similar to IterateAllContainerSizes (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) IterateAllReportSummaries ¶ added in v0.24.0
IterateAllReportSummaries invokes `iterateAllReportSummaries` method of contract.
func (*ContractReader) IterateAllReportSummariesExpanded ¶ added in v0.24.0
func (c *ContractReader) IterateAllReportSummariesExpanded(_numOfIteratorItems int) ([]stackitem.Item, error)
IterateAllReportSummariesExpanded is similar to IterateAllReportSummaries (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) IterateContainerSizes ¶
func (c *ContractReader) IterateContainerSizes(epoch *big.Int, cid util.Uint256) (uuid.UUID, result.Iterator, error)
IterateContainerSizes invokes `iterateContainerSizes` method of contract.
func (*ContractReader) IterateContainerSizesExpanded ¶
func (c *ContractReader) IterateContainerSizesExpanded(epoch *big.Int, cid util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
IterateContainerSizesExpanded is similar to IterateContainerSizes (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) IterateReports ¶ added in v0.24.0
IterateReports invokes `iterateReports` method of contract.
func (*ContractReader) IterateReportsExpanded ¶ added in v0.24.0
func (c *ContractReader) IterateReportsExpanded(cid util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
IterateReportsExpanded is similar to IterateReports (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) ListContainerSizes ¶
func (c *ContractReader) ListContainerSizes(epoch *big.Int) ([][]byte, error)
ListContainerSizes invokes `listContainerSizes` method of contract.
func (*ContractReader) Nodes ¶ added in v0.21.0
func (c *ContractReader) Nodes(cID util.Uint256, placementVector *big.Int) (uuid.UUID, result.Iterator, error)
Nodes invokes `nodes` method of contract.
func (*ContractReader) NodesExpanded ¶ added in v0.21.0
func (c *ContractReader) NodesExpanded(cID util.Uint256, placementVector *big.Int, _numOfIteratorItems int) ([]stackitem.Item, error)
NodesExpanded is similar to Nodes (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) Owner ¶
func (c *ContractReader) Owner(containerID []byte) ([]byte, error)
Owner invokes `owner` method of contract.
func (*ContractReader) ReplicasNumbers ¶ added in v0.21.0
ReplicasNumbers invokes `replicasNumbers` method of contract.
func (*ContractReader) ReplicasNumbersExpanded ¶ added in v0.21.0
func (c *ContractReader) ReplicasNumbersExpanded(cID util.Uint256, _numOfIteratorItems int) ([]stackitem.Item, error)
ReplicasNumbersExpanded is similar to ReplicasNumbers (uses the same contract method), but can be useful if the server used doesn't support sessions and doesn't expand iterators. It creates a script that will get the specified number of result items from the iterator right in the VM and return them to you. It's only limited by VM stack and GAS available for RPC invocations.
func (*ContractReader) UserQuota ¶ added in v0.24.0
func (c *ContractReader) UserQuota(user []byte) (*ContainerQuota, error)
UserQuota invokes `userQuota` method of contract.
func (*ContractReader) VerifyPlacementSignatures ¶ added in v0.21.0
func (c *ContractReader) VerifyPlacementSignatures(cid util.Uint256, msg []byte, sigs [][][]byte) (bool, error)
VerifyPlacementSignatures invokes `verifyPlacementSignatures` method of contract.
type CreatedEvent ¶ added in v0.22.0
CreatedEvent represents "Created" event emitted by the contract.
func CreatedEventsFromApplicationLog ¶ added in v0.22.0
func CreatedEventsFromApplicationLog(log *result.ApplicationLog) ([]*CreatedEvent, error)
CreatedEventsFromApplicationLog retrieves a set of all emitted events with "Created" name from the provided result.ApplicationLog.
func (*CreatedEvent) FromStackItem ¶ added in v0.22.0
func (e *CreatedEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to CreatedEvent or returns an error if it's not possible to do to so.
type DeleteSuccessEvent ¶
type DeleteSuccessEvent struct {
ContainerID []byte
}
DeleteSuccessEvent represents "DeleteSuccess" event emitted by the contract.
func DeleteSuccessEventsFromApplicationLog ¶
func DeleteSuccessEventsFromApplicationLog(log *result.ApplicationLog) ([]*DeleteSuccessEvent, error)
DeleteSuccessEventsFromApplicationLog retrieves a set of all emitted events with "DeleteSuccess" name from the provided result.ApplicationLog.
func (*DeleteSuccessEvent) FromStackItem ¶
func (e *DeleteSuccessEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to DeleteSuccessEvent or returns an error if it's not possible to do to so.
type EACLChangedEvent ¶ added in v0.22.0
EACLChangedEvent represents "EACLChanged" event emitted by the contract.
func EACLChangedEventsFromApplicationLog ¶ added in v0.22.0
func EACLChangedEventsFromApplicationLog(log *result.ApplicationLog) ([]*EACLChangedEvent, error)
EACLChangedEventsFromApplicationLog retrieves a set of all emitted events with "EACLChanged" name from the provided result.ApplicationLog.
func (*EACLChangedEvent) FromStackItem ¶ added in v0.22.0
func (e *EACLChangedEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to EACLChangedEvent or returns an error if it's not possible to do to so.
type Invoker ¶
type Invoker interface {
Call(contract util.Uint160, operation string, params ...any) (*result.Invoke, error)
CallAndExpandIterator(contract util.Uint160, method string, maxItems int, params ...any) (*result.Invoke, error)
TerminateSession(sessionID uuid.UUID) error
TraverseIterator(sessionID uuid.UUID, iterator *result.Iterator, num int) ([]stackitem.Item, error)
}
Invoker is used by ContractReader to call various safe methods.
type NodesUpdateEvent ¶ added in v0.21.0
NodesUpdateEvent represents "NodesUpdate" event emitted by the contract.
func NodesUpdateEventsFromApplicationLog ¶ added in v0.21.0
func NodesUpdateEventsFromApplicationLog(log *result.ApplicationLog) ([]*NodesUpdateEvent, error)
NodesUpdateEventsFromApplicationLog retrieves a set of all emitted events with "NodesUpdate" name from the provided result.ApplicationLog.
func (*NodesUpdateEvent) FromStackItem ¶ added in v0.21.0
func (e *NodesUpdateEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to NodesUpdateEvent or returns an error if it's not possible to do to so.
type ObjectPutEvent ¶ added in v0.21.0
ObjectPutEvent represents "ObjectPut" event emitted by the contract.
func ObjectPutEventsFromApplicationLog ¶ added in v0.21.0
func ObjectPutEventsFromApplicationLog(log *result.ApplicationLog) ([]*ObjectPutEvent, error)
ObjectPutEventsFromApplicationLog retrieves a set of all emitted events with "ObjectPut" name from the provided result.ApplicationLog.
func (*ObjectPutEvent) FromStackItem ¶ added in v0.21.0
func (e *ObjectPutEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to ObjectPutEvent or returns an error if it's not possible to do to so.
type PutSuccessEvent ¶
PutSuccessEvent represents "PutSuccess" event emitted by the contract.
func PutSuccessEventsFromApplicationLog ¶
func PutSuccessEventsFromApplicationLog(log *result.ApplicationLog) ([]*PutSuccessEvent, error)
PutSuccessEventsFromApplicationLog retrieves a set of all emitted events with "PutSuccess" name from the provided result.ApplicationLog.
func (*PutSuccessEvent) FromStackItem ¶
func (e *PutSuccessEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to PutSuccessEvent or returns an error if it's not possible to do to so.
type RemovedEvent ¶ added in v0.22.0
RemovedEvent represents "Removed" event emitted by the contract.
func RemovedEventsFromApplicationLog ¶ added in v0.22.0
func RemovedEventsFromApplicationLog(log *result.ApplicationLog) ([]*RemovedEvent, error)
RemovedEventsFromApplicationLog retrieves a set of all emitted events with "Removed" name from the provided result.ApplicationLog.
func (*RemovedEvent) FromStackItem ¶ added in v0.22.0
func (e *RemovedEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to RemovedEvent or returns an error if it's not possible to do to so.
type SetEACLSuccessEvent ¶
SetEACLSuccessEvent represents "SetEACLSuccess" event emitted by the contract.
func SetEACLSuccessEventsFromApplicationLog ¶
func SetEACLSuccessEventsFromApplicationLog(log *result.ApplicationLog) ([]*SetEACLSuccessEvent, error)
SetEACLSuccessEventsFromApplicationLog retrieves a set of all emitted events with "SetEACLSuccess" name from the provided result.ApplicationLog.
func (*SetEACLSuccessEvent) FromStackItem ¶
func (e *SetEACLSuccessEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to SetEACLSuccessEvent or returns an error if it's not possible to do to so.
type UserQuotaSetEvent ¶ added in v0.24.0
UserQuotaSetEvent represents "UserQuotaSet" event emitted by the contract.
func UserQuotaSetEventsFromApplicationLog ¶ added in v0.24.0
func UserQuotaSetEventsFromApplicationLog(log *result.ApplicationLog) ([]*UserQuotaSetEvent, error)
UserQuotaSetEventsFromApplicationLog retrieves a set of all emitted events with "UserQuotaSet" name from the provided result.ApplicationLog.
func (*UserQuotaSetEvent) FromStackItem ¶ added in v0.24.0
func (e *UserQuotaSetEvent) FromStackItem(item *stackitem.Array) error
FromStackItem converts provided stackitem.Array to UserQuotaSetEvent or returns an error if it's not possible to do to so.