Skip to content

Latest commit

 

History

History
31 lines (17 loc) · 1.1 KB

README.md

File metadata and controls

31 lines (17 loc) · 1.1 KB

TransactionEventStore

An extension of https://github.com/arkency/ruby_event_store with support for pessimistic locking and snapshots.

Implementations

  • Mongoid
  • Active Record coming soon

See Also

Snapshot Aggregate Root an "Aggregate Root" implementation using this event store.

API

Same as RubyEventStore::Client except the following additions

Snapshots

  • publish_snapshot - delegates to repository#create_snapshot
  • last_stream_snapshot - delegates to repository#last_stream_snapshot

Concurrent writers

  • with_lock method added, which delegates to repository#with_lock
  • notify_susbsribers method added, which exposes the exising event_broker#notify_subscribers function (this is used with_write_context to ensure event handlers aren't called until after the events are committed)

Unlimited queries

  • Event store reader methods (read_events_forward etc), that accept a count: parameter can be passed count: nil to disable limits