Documentation ¶
Index ¶
- Variables
- type EventStore
- func (s *EventStore) Clear(ctx context.Context) error
- func (s *EventStore) Close(ctx context.Context)
- 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 ¶
var ErrCouldNotClearDB = errors.New("could not clear database")
ErrCouldNotClearDB is when the database could not be cleared.
var ErrCouldNotDialDB = errors.New("could not dial database")
ErrCouldNotDialDB is when the database could not be dialed.
var ErrCouldNotLoadAggregate = errors.New("could not load aggregate")
ErrCouldNotLoadAggregate is when an aggregate could not be loaded.
var ErrCouldNotMarshalEvent = errors.New("could not marshal event")
ErrCouldNotMarshalEvent is when an event could not be marshaled into BSON.
var ErrCouldNotSaveAggregate = errors.New("could not save aggregate")
ErrCouldNotSaveAggregate is when an aggregate could not be saved.
var ErrCouldNotUnmarshalEvent = errors.New("could not unmarshal event")
ErrCouldNotUnmarshalEvent is when an event could not be unmarshaled into a concrete type.
var ErrNoDBClient = errors.New("no database client")
ErrNoDBClient is when no database client is set.
Functions ¶
This section is empty.
Types ¶
type EventStore ¶
type EventStore struct {
// contains filtered or unexported fields
}
EventStore implements an EventStore for MongoDB.
func NewEventStore ¶
func NewEventStore(uri, dbPrefix 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, dbPrefix 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)
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 WithDBName ¶ added in v0.7.0
WithDBName uses a custom DB name function.
func WithPrefixAsDBName ¶ added in v0.7.0
func WithPrefixAsDBName() Option
WithPrefixAsDBName uses only the prefix as DB name, without namespace support.