rill.wheel.repository
The protocol for implementing repositories.
Repository
protocol
members
commit!
(commit! repo aggregate)Commit changes to aggregate by storing its :rill.wheel/new-events. Returns true on success or when there are no new events. nil otherwise.
Application writers should use rill.wheel/commit! instead.
event-store
(event-store repo)The backing event store for this repository
update
(update repo aggregate)Update an aggregate by applying any new committed events, as determined by :rill.wheel/version.
Application writers should call the get-{aggregate-name} functions generated by rill.wheel/defaggregate instead.
repository?
(repository? repo)Test if repo is a repository