Documentation ¶
Index ¶
- type EventStore
- func (s *EventStore) Clear(ctx context.Context) error
- func (s *EventStore) Close(ctx context.Context) error
- func (s *EventStore) Load(ctx context.Context, id uuid.UUID) ([]eh.Event, error)
- func (s *EventStore) RenameEvent(ctx context.Context, from, to eh.EventType) error
- func (s *EventStore) Replace(ctx context.Context, event eh.Event) error
- func (s *EventStore) Save(ctx context.Context, events []eh.Event, originalVersion int) error
- type Option
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EventStore ¶
type EventStore struct {
// contains filtered or unexported fields
}
EventStore implements an eventhorizon.EventStore for MongoDB using a single collection with one document per aggregate/stream which holds its events as values.
func NewEventStore ¶
func NewEventStore(uri, db string, options ...Option) (*EventStore, error)
NewEventStore creates a new EventStore with a MongoDB URI: `mongodb://hostname`.
func NewEventStoreWithClient ¶ added in v0.6.0
func NewEventStoreWithClient(client *mongo.Client, db string, options ...Option) (*EventStore, error)
NewEventStoreWithClient creates a new EventStore with a client.
func (*EventStore) Clear ¶
func (s *EventStore) Clear(ctx context.Context) error
Clear clears the event storage.
func (*EventStore) Close ¶
func (s *EventStore) Close(ctx context.Context) error
Close closes the database client.
func (*EventStore) RenameEvent ¶
RenameEvent implements the RenameEvent method of the eventhorizon.EventStore interface.
type Option ¶ added in v0.7.0
type Option func(*EventStore) error
Option is an option setter used to configure creation.
func WithEventHandler ¶ added in v0.13.0
func WithEventHandler(h eh.EventHandler) Option
WithEventHandler adds an event handler that will be called when saving events. An example would be to add an event bus to publish events.