Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func New ¶ added in v0.45.0
func New(s *ecdsa.PrivateKey, net netmap.State, c Contract) protocontainer.ContainerServiceServer
New provides protocontainer.ContainerServiceServer based on specified Contract.
All response messages are signed using specified signer and have current epoch in the meta header.
Types ¶
type Contract ¶ added in v0.45.0
type Contract interface {
// Put sends transaction creating container with provided credentials. If
// accepted, transaction is processed async. Returns container ID to check the
// creation status.
Put(_ container.Container, pub, sig []byte, _ *session.Container) (cid.ID, error)
// Get returns container by its ID. Returns [apistatus.ErrContainerNotFound]
// error if container is missing.
Get(cid.ID) (container.Container, error)
// List returns IDs of all container belonging to the given user.
//
// Callers do not modify the result.
List(user.ID) ([]cid.ID, error)
// PutEACL sends transaction setting container's eACL with provided credentials.
// If accepted, transaction is processed async.
PutEACL(_ eacl.Table, pub, sig []byte, _ *session.Container) error
// GetEACL returns eACL of the container by its ID. Returns
// [apistatus.ErrEACLNotFound] error if eACL is missing.
GetEACL(cid.ID) (eacl.Table, error)
// Delete sends transaction removing referenced container with provided
// credentials. If accepted, transaction is processed async.
Delete(_ cid.ID, pub, sig []byte, _ *session.Container) error
}
Contract groups ops of the Container contract deployed in the FS chain required to serve NeoFS API Container service.
Click to show internal directories.
Click to hide internal directories.