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.Akka.Domain.AkkaSagaRepository< TAuthenticationToken > Class Template Reference

A SagaRepository<TAuthenticationToken> that is safe to use within Akka.NET More...

+ Inheritance diagram for Cqrs.Akka.Domain.AkkaSagaRepository< TAuthenticationToken >:

Public Member Functions

 AkkaSagaRepository (IAggregateFactory aggregateFactory, IEventStore< TAuthenticationToken > eventStore, IEventPublisher< TAuthenticationToken > publisher, ICommandPublisher< TAuthenticationToken > commandPublisher, ICorrelationIdHelper correlationIdHelper, IAkkaEventPublisherProxy< TAuthenticationToken > eventPublisher)
 Instantiates a new instance of AkkaSagaRepository<TAuthenticationToken> More...
 
- Public Member Functions inherited from Cqrs.Domain.SagaRepository< TAuthenticationToken >
 SagaRepository (IAggregateFactory sagaFactory, IEventStore< TAuthenticationToken > eventStore, IEventPublisher< TAuthenticationToken > publisher, ICommandPublisher< TAuthenticationToken > commandPublisher, ICorrelationIdHelper correlationIdHelper)
 Instantiates a new instance of SagaRepository<TAuthenticationToken> More...
 
virtual void Save< TSaga > (TSaga saga, int? expectedVersion=null)
 Save and persist the provided saga , optionally providing the version number the ISaga<TAuthenticationToken> is expected to be at. More...
 
virtual TSaga Get< TSaga > (Guid sagaId, IList< ISagaEvent< TAuthenticationToken >> events=null)
 Retrieves an ISaga<TAuthenticationToken> of type TSaga . More...
 
virtual void LoadSagaHistory< TSaga > (TSaga saga, IList< ISagaEvent< TAuthenticationToken >> events=null, bool throwExceptionOnNoEvents=true)
 If events is null, loads the events from EventStore, checks for duplicates and then rehydrates the saga with the events. More...
 
- Public Member Functions inherited from Cqrs.Akka.Domain.IAkkaSagaRepository< TAuthenticationToken >
void LoadSagaHistory< TSaga > (TSaga saga, IList< ISagaEvent< TAuthenticationToken >> events=null, bool throwExceptionOnNoEvents=true)
 If events is null, loads the events from an IEventStore<TAuthenticationToken>, checks for duplicates and then rehydrates the saga with the events. More...
 

Protected Member Functions

override TSaga CreateSaga< TSaga > (Guid id)
 Calls IAggregateFactory.Create to get a, TSaga . More...
 
override void PublishEvent (ISagaEvent< TAuthenticationToken > @event)
 Publish the saved event asynchronously on EventPublisher, then calls SagaRepository<TAuthenticationToken>.PublishEvent More...
 
- Protected Member Functions inherited from Cqrs.Domain.SagaRepository< TAuthenticationToken >
virtual void PublishCommand (IEnumerable< ICommand< TAuthenticationToken >> commands)
 Publish the commands . More...
 
virtual TSaga LoadSaga< TSaga > (Guid id, IList< ISagaEvent< TAuthenticationToken >> events=null)
 Calls IAggregateFactory.Create to get a, TSaga and then calls LoadSagaHistory<TSaga>. More...
 

Properties

IAkkaEventPublisherProxy< TAuthenticationToken > EventPublisher [get]
 Gets the IAkkaEventPublisherProxy<TAuthenticationToken> More...
 
- Properties inherited from Cqrs.Domain.SagaRepository< TAuthenticationToken >
IEventStore< TAuthenticationToken > EventStore [get]
 Gets or sets the IEventStore<TAuthenticationToken> used to store and retrieve events from. More...
 
IEventPublisher< TAuthenticationToken > Publisher [get]
 Gets or sets the Publisher used to publish events on once saved into the EventStore. More...
 
ICommandPublisher< TAuthenticationToken > CommandPublisher [get]
 Gets or sets the Publisher used to publish an ICommand<TAuthenticationToken> More...
 
IAggregateFactory SagaFactory [get]
 Gets or set the IAggregateFactory. More...
 
ICorrelationIdHelper CorrelationIdHelper [get]
 Gets or set the ICorrelationIdHelper. More...
 

Detailed Description

A SagaRepository<TAuthenticationToken> that is safe to use within Akka.NET

Template Parameters
TAuthenticationTokenThe Type of authentication token.