Class: Aggregates::AggregateRepository
- Inherits:
-
Object
- Object
- Aggregates::AggregateRepository
- Defined in:
- lib/aggregates/aggregate_repository.rb
Overview
Uses the storage backend to store load aggregates.
Instance Method Summary collapse
-
#initialize(storage_backend) ⇒ AggregateRepository
constructor
A new instance of AggregateRepository.
- #load_aggregate(type, id, at: nil) ⇒ Object
Constructor Details
#initialize(storage_backend) ⇒ AggregateRepository
Returns a new instance of AggregateRepository.
8 9 10 |
# File 'lib/aggregates/aggregate_repository.rb', line 8 def initialize(storage_backend) @storage_backend = storage_backend end |
Instance Method Details
#load_aggregate(type, id, at: nil) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/aggregates/aggregate_repository.rb', line 12 def load_aggregate(type, id, at: nil) event_stream = create_aggregate_event_stream(type, id) aggregate = type.new(id, event_stream) replay_events_on_aggregate(aggregate, event_stream, at) aggregate end |