Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventsStore ¶
type EventsStore interface { // Connect connects to the journal store Connect(ctx context.Context) error // Disconnect disconnect the journal store Disconnect(ctx context.Context) error // WriteEvents persist event in batches for a given persistenceID. // Note: persistence id and the sequence number make a record in the journal store unique. Failure to ensure that // can lead to some un-wanted behaviors and data inconsistency WriteEvents(ctx context.Context, events []*egopb.Event) error // Ping verifies a connection to the database is still alive, establishing a connection if necessary. Ping(ctx context.Context) error // DeleteEvents deletes store from the store upt to a given sequence number (inclusive) DeleteEvents(ctx context.Context, persistenceID string, toSequenceNumber uint64) error // ReplayEvents fetches store for a given persistence ID from a given sequence number(inclusive) to a given sequence number(inclusive) with a maximum of journals to be replayed. ReplayEvents(ctx context.Context, persistenceID string, fromSequenceNumber, toSequenceNumber uint64, max uint64) ([]*egopb.Event, error) // GetLatestEvent fetches the latest event GetLatestEvent(ctx context.Context, persistenceID string) (*egopb.Event, error) // PersistenceIDs returns the distinct list of all the persistence ids in the journal store PersistenceIDs(ctx context.Context, pageSize uint64, pageToken string) (persistenceIDs []string, nextPageToken string, err error) // GetShardEvents returns the next (max) events after the offset in the journal for a given shard GetShardEvents(ctx context.Context, shardNumber uint64, offset int64, max uint64) ([]*egopb.Event, int64, error) // ShardNumbers returns the distinct list of all the shards in the journal store ShardNumbers(ctx context.Context) ([]uint64, error) }
EventsStore defines the API to write to the events store
type StateStore ¶
type StateStore interface { // Connect connects to the journal store Connect(ctx context.Context) error // Disconnect disconnect the journal store Disconnect(ctx context.Context) error // Ping verifies a connection to the database is still alive, establishing a connection if necessary. Ping(ctx context.Context) error // WriteState persist durable state for a given persistenceID. WriteState(ctx context.Context, state *egopb.DurableState) error // GetLatestState fetches the latest durable state GetLatestState(ctx context.Context, persistenceID string) (*egopb.DurableState, error) }
StateStore defines the API to interact with the durable state store
Click to show internal directories.
Click to hide internal directories.