CQRS.NET  4.0
A lightweight enterprise Function as a Service (FaaS) framework to write function based serverless and micro-service applications in hybrid multi-datacentre, on-premise and Azure environments.
Cqrs.Events.EventStore< TAuthenticationToken > Class Template Referenceabstract

Stores instances of IEvent<TAuthenticationToken> for replay, IAggregateRoot<TAuthenticationToken> and ISaga<TAuthenticationToken> rehydration. More...

+ Inheritance diagram for Cqrs.Events.EventStore< TAuthenticationToken >:

Public Member Functions

virtual void Save< T > (IEvent< TAuthenticationToken > @event)
 Saves the provided event . More...
 
virtual void Save (Type aggregateRootType, IEvent< TAuthenticationToken > @event)
 Saves the provided event . More...
 
virtual IEnumerable< IEvent< TAuthenticationToken > > Get< T > (Guid aggregateId, bool useLastEventOnly=false, int fromVersion=-1)
 Gets a collection of IEvent<TAuthenticationToken> for the T aggregate root with the ID matching the provided aggregateId . More...
 
abstract IEnumerable< IEvent< TAuthenticationToken > > Get (Type aggregateRootType, Guid aggregateId, bool useLastEventOnly=false, int fromVersion=-1)
 Gets a collection of IEvent<TAuthenticationToken> for the IAggregateRoot<TAuthenticationToken> of type aggregateRootType with the ID matching the provided aggregateId . More...
 
abstract IEnumerable< IEvent< TAuthenticationToken > > GetToVersion (Type aggregateRootType, Guid aggregateId, int version)
 Gets a collection of IEvent<TAuthenticationToken> for the IAggregateRoot<TAuthenticationToken> of type aggregateRootType with the ID matching the provided aggregateId up to and including the provided version . More...
 
virtual IEnumerable< IEvent< TAuthenticationToken > > GetToVersion< T > (Guid aggregateId, int version)
 Gets a collection of IEvent<TAuthenticationToken> for the T aggregate root with the ID matching the provided aggregateId up to and including the provided version . More...
 
abstract IEnumerable< IEvent< TAuthenticationToken > > GetToDate (Type aggregateRootType, Guid aggregateId, DateTime versionedDate)
 Gets a collection of IEvent<TAuthenticationToken> for the IAggregateRoot<TAuthenticationToken> of type aggregateRootType with the ID matching the provided aggregateId up to and including the provided versionedDate . More...
 
virtual IEnumerable< IEvent< TAuthenticationToken > > GetToDate< T > (Guid aggregateId, DateTime versionedDate)
 Gets a collection of IEvent<TAuthenticationToken> for the T aggregate root with the ID matching the provided aggregateId up to and including the provided versionedDate . More...
 
abstract IEnumerable< IEvent< TAuthenticationToken > > GetBetweenDates (Type aggregateRootType, Guid aggregateId, DateTime fromVersionedDate, DateTime toVersionedDate)
 Gets a collection of IEvent<TAuthenticationToken> for the IAggregateRoot<TAuthenticationToken> of type aggregateRootType with the ID matching the provided aggregateId from and including the provided fromVersionedDate up to and including the provided toVersionedDate . More...
 
virtual IEnumerable< IEvent< TAuthenticationToken > > GetBetweenDates< T > (Guid aggregateId, DateTime fromVersionedDate, DateTime toVersionedDate)
 Gets a collection of IEvent<TAuthenticationToken> for the T aggregate root with the ID matching the provided aggregateId from and including the provided fromVersionedDate up to and including the provided toVersionedDate . More...
 
abstract IEnumerable< EventDataGet (Guid correlationId)
 Get all IEvent<TAuthenticationToken> instances for the given correlationId . More...
 

Protected Member Functions

 EventStore (IEventBuilder< TAuthenticationToken > eventBuilder, IEventDeserialiser< TAuthenticationToken > eventDeserialiser, ILogger logger)
 Instantiates a new instance of EventStore<TAuthenticationToken>. More...
 
virtual string GenerateStreamName (Type aggregateRootType, IEvent< TAuthenticationToken > @event)
 Generate a unique stream name based on the provided aggregateRootType and the IEvent<TAuthenticationToken>.Id from the provided event . More...
 
virtual string GenerateStreamName (Type aggregateRootType, Guid aggregateId)
 Generate a unique stream name based on the provided aggregateRootType and the aggregateId . More...
 
abstract void PersistEvent (EventData eventData)
 Persist the provided eventData into storage. More...
 

Static Protected Attributes

const string CqrsEventStoreStreamNamePattern = "{0}/{1}"
 The pattern used to generate the stream name. More...
 

Properties

IEventBuilder< TAuthenticationToken > EventBuilder [get, set]
 The IEventBuilder<TAuthenticationToken> used to build events. More...
 
IEventDeserialiser< TAuthenticationToken > EventDeserialiser [get, set]
 The IEventDeserialiser<TAuthenticationToken> used to deserialise events. More...
 
ITelemetryHelper TelemetryHelper [get, set]
 The ITelemetryHelper to use. More...
 
ILogger Logger [get]
 The ILogger to use. More...
 

Detailed Description

Stores instances of IEvent<TAuthenticationToken> for replay, IAggregateRoot<TAuthenticationToken> and ISaga<TAuthenticationToken> rehydration.

Template Parameters
TAuthenticationTokenThe Type of the authentication token.