Documentation ¶
Index ¶
Constants ¶
View Source
const MetaColumnPrefix = "meta_"
Variables ¶
View Source
var ErrResumeTokenNotFound = errors.New("resume token not found")
Functions ¶
This section is empty.
Types ¶
type AggregateMetadata ¶ added in v0.28.0
type AggregateMetadata[K eventsourcing.ID] struct { Type eventsourcing.Kind ID K Version uint32 UpdatedAt time.Time }
type EventBus ¶ added in v0.28.0
type EventBus[K eventsourcing.ID] struct { // contains filtered or unexported fields }
func New ¶ added in v0.28.0
func New[K eventsourcing.ID](mw ...EventBusMW[K]) *EventBus[K]
func (*EventBus[K]) Subscribe ¶ added in v0.29.0
func (m *EventBus[K]) Subscribe(filter string, handler Subscription[K], mw ...EventBusMW[K])
Subscribe register an handler subscription. The middlewares are executed in the reverse order
type EventBusMW ¶ added in v0.28.0
type EventBusMW[K eventsourcing.ID] func(Subscription[K]) Subscription[K]
type Filter ¶
type Filter struct { AggregateKinds []eventsourcing.Kind // Metadata filters on top of metadata. Every key of the map is ANDed with every OR of the values // eg: [{"geo": "EU"}, {"geo": "USA"}, {"membership": "prime"}] equals to: geo IN ("EU", "USA") AND membership = "prime" Metadata MetadataFilter Splits uint32 SplitIDs []uint32 }
type FilterOption ¶
type FilterOption func(*Filter)
func WithAggregateKinds ¶ added in v0.28.0
func WithAggregateKinds(at ...eventsourcing.Kind) FilterOption
func WithFilter ¶
func WithFilter(filter Filter) FilterOption
func WithMetadata ¶
func WithMetadata(metadata MetadataFilter) FilterOption
func WithMetadataFilter ¶ added in v0.36.0
func WithMetadataFilter(key, value string) FilterOption
func WithSplits ¶ added in v0.36.0
func WithSplits(partitions uint32, partitionIDs []uint32) FilterOption
type InTxHandler ¶ added in v0.34.0
type InTxHandler[K eventsourcing.ID] func(context.Context, *eventsourcing.Event[K]) error
type MetadataFilter ¶ added in v0.36.0
type MetadataFilter []*MetadataKVs
func (*MetadataFilter) Add ¶ added in v0.36.0
func (m *MetadataFilter) Add(key string, values ...string)
type MetadataHook ¶ added in v0.36.0
type MetadataHook[K eventsourcing.ID] func(context.Context) eventsourcing.Metadata
type MetadataKVs ¶ added in v0.36.0
type Subscriber ¶ added in v0.28.0
type Subscriber[K eventsourcing.ID] interface { Subscribe(string, Subscription[K]) }
type Subscription ¶ added in v0.28.0
type Subscription[K eventsourcing.ID] func(context.Context, *eventsourcing.Event[K]) error
Click to show internal directories.
Click to hide internal directories.