stream

package
v0.7.1 Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2023 License: MIT Imports: 10 Imported by: 13

Documentation

Index

Constants

View Source
const BATCH_SIZE = 5000 //5000 is an arbitrary number, should probably be based on something else.

Variables

This section is empty.

Functions

func NewStream added in v0.4.0

func NewStream[DT any](es Stream, eventTypes []event.Type, from store.StreamPosition, filter Filter,
	cryptKey CryptoKeyProvider, ctx context.Context) (out <-chan event.Event[DT], err error)

Types

type CryptoKeyProvider

type CryptoKeyProvider func(key string) string

type Filter

type Filter func(md event.Metadata) bool

func ReadAll

func ReadAll() Filter

func ReadDataType added in v0.3.1

func ReadDataType(t string) Filter

func ReadEventType added in v0.3.1

func ReadEventType(t event.Type) Filter

type Map added in v0.5.0

type Map[T any] interface {
	Store(id string, data T)
	Load(id string) (data T, ok bool)
	Delete(id string)
	Range(f func(k string, v T) bool)
}

func New added in v0.5.0

func New[T any]() Map[T]

type Persistence

type Persistence interface {
	Store(streamName string, ctx context.Context, events ...store.Event) (transactionId uint64, err error)
	Stream(streamName string, from store.StreamPosition, ctx context.Context) (out <-chan store.Event, err error)
}

type SetHelper added in v0.5.0

type SetHelper interface {
	SetAndWait(event.StoreEvent) error
}

func InitSetHelper added in v0.5.0

func InitSetHelper[DT any](store, delete func(event.Event[DT]), stream Stream, keyProvider CryptoKeyProvider, eventChannel <-chan event.Event[DT], ctx context.Context) (out SetHelper)

type Stream

type Stream interface {
	Store(event event.StoreEvent, cryptoKey CryptoKeyProvider) (transactionId uint64, err error)
	Stream(from store.StreamPosition, ctx context.Context) (out <-chan store.Event, err error)
	Name() string
}

func Init

func Init(st Persistence, stream string, ctx context.Context) (out Stream, err error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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