getters

package
v0.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 18, 2023 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WithSession

func WithSession(ctx context.Context) context.Context

WithSession stores an empty session in the context, indicating that a blockservice session should be created.

Types

type IPLDGetter

type IPLDGetter struct {
	// contains filtered or unexported fields
}

IPLDGetter is a share.Getter that retrieves shares from the bitswap network. Result caching is handled by the provided blockservice. A blockservice session will be created for retrieval if the passed context is wrapped with WithSession.

func NewIPLDGetter

func NewIPLDGetter(bServ blockservice.BlockService) *IPLDGetter

NewIPLDGetter creates a new share.Getter that retrieves shares from the bitswap network.

func (*IPLDGetter) GetEDS

func (ig *IPLDGetter) GetEDS(ctx context.Context, root *share.Root) (*rsmt2d.ExtendedDataSquare, error)

func (*IPLDGetter) GetShare

func (ig *IPLDGetter) GetShare(ctx context.Context, dah *share.Root, row, col int) (share.Share, error)

GetShare gets a single share at the given EDS coordinates from the bitswap network.

func (*IPLDGetter) GetSharesByNamespace

func (ig *IPLDGetter) GetSharesByNamespace(
	ctx context.Context,
	root *share.Root,
	nID namespace.ID,
) (share.NamespacedShares, error)

type StoreGetter

type StoreGetter struct {
	// contains filtered or unexported fields
}

StoreGetter is a share.Getter that retrieves shares from an eds.Store. No results are saved to the eds.Store after retrieval.

func NewStoreGetter

func NewStoreGetter(store *eds.Store) *StoreGetter

NewStoreGetter creates a new share.Getter that retrieves shares from an eds.Store.

func (*StoreGetter) GetEDS

func (sg *StoreGetter) GetEDS(ctx context.Context, root *share.Root) (*rsmt2d.ExtendedDataSquare, error)

GetEDS gets the EDS identified by the given root from the EDS store.

func (*StoreGetter) GetShare

func (sg *StoreGetter) GetShare(ctx context.Context, dah *share.Root, row, col int) (share.Share, error)

GetShare gets a single share at the given EDS coordinates from the eds.Store through the corresponding CAR-level blockstore.

func (*StoreGetter) GetSharesByNamespace

func (sg *StoreGetter) GetSharesByNamespace(
	ctx context.Context,
	root *share.Root,
	nID namespace.ID,
) (share.NamespacedShares, error)

GetSharesByNamespace gets all EDS shares in the given namespace from the EDS store through the corresponding CAR-level blockstore.

type TeeGetter

type TeeGetter struct {
	// contains filtered or unexported fields
}

TeeGetter is a share.Getter that wraps a getter and stores the results of GetEDS into an eds.Store.

func NewTeeGetter

func NewTeeGetter(getter share.Getter, store *eds.Store) *TeeGetter

NewTeeGetter creates a new TeeGetter.

func (*TeeGetter) GetEDS

func (tg *TeeGetter) GetEDS(ctx context.Context, root *share.Root) (*rsmt2d.ExtendedDataSquare, error)

func (*TeeGetter) GetShare

func (tg *TeeGetter) GetShare(ctx context.Context, root *share.Root, row, col int) (share.Share, error)

func (*TeeGetter) GetSharesByNamespace

func (tg *TeeGetter) GetSharesByNamespace(
	ctx context.Context,
	root *share.Root,
	id namespace.ID,
) (share.NamespacedShares, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL