Documentation ¶
Index ¶
- func ConstructModule() fx.Option
- type API
- func (api *API) Get(ctx context.Context, height uint64, namespace libshare.Namespace, ...) (*blob.Blob, error)
- func (api *API) GetAll(ctx context.Context, height uint64, namespaces []libshare.Namespace) ([]*blob.Blob, error)
- func (api *API) GetCommitmentProof(ctx context.Context, height uint64, namespace libshare.Namespace, ...) (*blob.CommitmentProof, error)
- func (api *API) GetProof(ctx context.Context, height uint64, namespace libshare.Namespace, ...) (*blob.Proof, error)
- func (api *API) Included(ctx context.Context, height uint64, namespace libshare.Namespace, ...) (bool, error)
- func (api *API) Submit(ctx context.Context, blobs []*blob.Blob, options *blob.SubmitOptions) (uint64, error)
- func (api *API) Subscribe(ctx context.Context, namespace libshare.Namespace) (<-chan *blob.SubscriptionResponse, error)
- type Module
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConstructModule ¶
Types ¶
type API ¶
type API struct { Internal struct { Submit func( context.Context, []*blob.Blob, *blob.SubmitOptions, ) (uint64, error) `perm:"write"` Get func( context.Context, uint64, libshare.Namespace, blob.Commitment, ) (*blob.Blob, error) `perm:"read"` GetAll func( context.Context, uint64, []libshare.Namespace, ) ([]*blob.Blob, error) `perm:"read"` GetProof func( context.Context, uint64, libshare.Namespace, blob.Commitment, ) (*blob.Proof, error) `perm:"read"` Included func( context.Context, uint64, libshare.Namespace, *blob.Proof, blob.Commitment, ) (bool, error) `perm:"read"` GetCommitmentProof func( ctx context.Context, height uint64, namespace libshare.Namespace, shareCommitment []byte, ) (*blob.CommitmentProof, error) `perm:"read"` Subscribe func( context.Context, libshare.Namespace, ) (<-chan *blob.SubscriptionResponse, error) `perm:"read"` } }
func (*API) GetCommitmentProof ¶ added in v0.15.0
type Module ¶
type Module interface { // Submit sends Blobs and reports the height in which they were included. // Allows sending multiple Blobs atomically synchronously. // Uses default wallet registered on the Node. Submit(_ context.Context, _ []*blob.Blob, _ *blob.SubmitOptions) (height uint64, _ error) // Get retrieves the blob by commitment under the given namespace and height. Get(_ context.Context, height uint64, _ libshare.Namespace, _ blob.Commitment) (*blob.Blob, error) // GetAll returns all blobs under the given namespaces at the given height. // If all blobs were found without any errors, the user will receive a list of blobs. // If the BlobService couldn't find any blobs under the requested namespaces, // the user will receive an empty list of blobs along with an empty error. // If some of the requested namespaces were not found, the user will receive all the found blobs // and an empty error. If there were internal errors during some of the requests, // the user will receive all found blobs along with a combined error message. // // All blobs will preserve the order of the namespaces that were requested. GetAll(_ context.Context, height uint64, _ []libshare.Namespace) ([]*blob.Blob, error) // GetProof retrieves proofs in the given namespaces at the given height by commitment. GetProof(_ context.Context, height uint64, _ libshare.Namespace, _ blob.Commitment) (*blob.Proof, error) // Included checks whether a blob's given commitment(Merkle subtree root) is included at // given height and under the namespace. Included(_ context.Context, height uint64, _ libshare.Namespace, _ *blob.Proof, _ blob.Commitment) (bool, error) // GetCommitmentProof generates a commitment proof for a share commitment. GetCommitmentProof( ctx context.Context, height uint64, namespace libshare.Namespace, shareCommitment []byte, ) (*blob.CommitmentProof, error) // Subscribe to published blobs from the given namespace as they are included. Subscribe(_ context.Context, _ libshare.Namespace) (<-chan *blob.SubscriptionResponse, error) }
Module defines the API related to interacting with the blobs
Click to show internal directories.
Click to hide internal directories.