Module: RubyCqrs::Validation

Includes:
Contracts, Contracts::Modules
Defined in:
lib/ruby_cqrs/contracts.rb

Defined Under Namespace

Classes: Aggregate, AggregateId, Event, EventStore, Snapshot, TypeOfEvent

Constant Summary collapse

AggregateChanges =
({ :events => ArrayOf[Event],
:aggregate_id => AggregateId,
:aggregate_type => String,
:expecting_source_version => Or[0, Pos],
:expecting_version => Pos })
AggregateChangesWithSnapshot =
({\
                          :events => ArrayOf[Event],
                          :aggregate_id => AggregateId,
                          :aggregate_type => String,
                          :expecting_source_version => Or[0, Pos],
                          :expecting_version => Pos,
                          :snapshot => {\
:state => Snapshot,
:state_type => String,
:version => Pos }})
AggregateState =
({\
:aggregate_id => AggregateId,
:aggregate_type => String,
:events => ArrayOf[Event]})
AggregateStateWithSnapshot =
({\
:aggregate_id => AggregateId,
:aggregate_type => String,
:snapshot => {\
         :state => Snapshot,
         :version => Pos },
:events => ArrayOf[Event]})
SerializedAggregateState =
({\
                          :aggregate_id => AggregateId,
                          :aggregate_type => String,
                          :events => ArrayOf[{\
:aggregate_id => AggregateId,
:event_type => String,
:version => Pos,
:data => String }]})
SerializedAggregateStateWithSnapshot =
({\
                        :aggregate_id => AggregateId,
                        :aggregate_type => String,
                        :snapshot => {\
:state_type => String,
:version => Pos,
:data => String },
                        :events => ArrayOf[{\
:aggregate_id => AggregateId,
:event_type => String,
:version => Pos,
:data => String }]})