tmstore

package
v0.4.8 Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2020 License: Apache-2.0 Imports: 17 Imported by: 2

Documentation

Overview

Package tmstore implements a store that saves all the segments in a tendermint app

Index

Constants

View Source
const (
	// Name is the name set in the store's information.
	Name = "tm"

	// Description is the description set in the store's information.
	Description = "Stratumn's Tendermint Store"

	// DefaultEndpoint is the default Tendermint endpoint.
	DefaultEndpoint = "tcp://127.0.0.1:46657"

	// DefaultWsRetryInterval is the default interval between Tendermint Websocket connection attempts.
	DefaultWsRetryInterval = 5 * time.Second

	// ErrAlreadySubscribed is the error returned by tendermint's rpc client when we try to suscribe twice to the same event
	ErrAlreadySubscribed = "already subscribed"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// A version string that will be set in the store's information.
	Version string

	// A git commit hash that will be set in the store's information.
	Commit string
}

Config contains configuration options for the store.

type Info

type Info struct {
	Name        string      `json:"name"`
	Description string      `json:"description"`
	TMAppInfo   interface{} `json:"tmAppDescription"`
	Version     string      `json:"version"`
	Commit      string      `json:"commit"`
}

Info is the info returned by GetInfo.

type TMStore

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

TMStore is the type that implements github.com/stratumn/go-core/store.Adapter.

func New

func New(config *Config, tmClient client.Client) *TMStore

New creates a new instance of a TMStore.

func (*TMStore) AddEvidence added in v0.2.0

func (t *TMStore) AddEvidence(ctx context.Context, linkHash chainscript.LinkHash, evidence *chainscript.Evidence) error

AddEvidence implements github.com/stratumn/go-core/store.EvidenceWriter.AddEvidence.

func (*TMStore) AddStoreEventChannel added in v0.2.0

func (t *TMStore) AddStoreEventChannel(storeChan chan *store.Event)

AddStoreEventChannel implements github.com/stratumn/go-core/store.Adapter.AddStoreEventChannel.

func (t *TMStore) CreateLink(ctx context.Context, link *chainscript.Link) (chainscript.LinkHash, error)

CreateLink implements github.com/stratumn/go-core/store.LinkWriter.CreateLink.

func (*TMStore) FindSegments

func (t *TMStore) FindSegments(ctx context.Context, filter *store.SegmentFilter) (segments *types.PaginatedSegments, err error)

FindSegments implements github.com/stratumn/go-core/store.SegmentReader.FindSegments.

func (*TMStore) GetEvidences added in v0.2.0

func (t *TMStore) GetEvidences(ctx context.Context, linkHash chainscript.LinkHash) (evidences types.EvidenceSlice, err error)

GetEvidences implements github.com/stratumn/go-core/store.EvidenceReader.GetEvidences.

func (*TMStore) GetInfo

func (t *TMStore) GetInfo(ctx context.Context) (interface{}, error)

GetInfo implements github.com/stratumn/go-core/store.Adapter.GetInfo.

func (*TMStore) GetMapIDs

func (t *TMStore) GetMapIDs(ctx context.Context, filter *store.MapFilter) (ids []string, err error)

GetMapIDs implements github.com/stratumn/go-core/store.SegmentReader.GetMapIDs.

func (*TMStore) GetSegment

func (t *TMStore) GetSegment(ctx context.Context, linkHash chainscript.LinkHash) (segment *chainscript.Segment, err error)

GetSegment implements github.com/stratumn/go-core/store.SegmentReader.GetSegment.

func (*TMStore) NewBatch

func (t *TMStore) NewBatch(ctx context.Context) (store.Batch, error)

NewBatch implements github.com/stratumn/go-core/store.Adapter.NewBatch.

func (*TMStore) RetryStartWebsocket

func (t *TMStore) RetryStartWebsocket(ctx context.Context, interval time.Duration) error

RetryStartWebsocket starts the websocket client and retries on errors.

func (*TMStore) StartWebsocket

func (t *TMStore) StartWebsocket(ctx context.Context) (err error)

StartWebsocket starts the websocket client and wait for New Block events.

func (*TMStore) StopWebsocket

func (t *TMStore) StopWebsocket(ctx context.Context) (err error)

StopWebsocket stops the websocket client.

Jump to

Keyboard shortcuts

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