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.Commands.ConcurrentAkkaCommandPublisher< TAuthenticationToken, TTarget > Class Template Reference

A IAkkaCommandPublisher<TAuthenticationToken> that ensure concurrency regardless of what it passes the command onto as it is a ReceiveActor More...

+ Inheritance diagram for Cqrs.Akka.Commands.ConcurrentAkkaCommandPublisher< TAuthenticationToken, TTarget >:

Public Member Functions

 ConcurrentAkkaCommandPublisher (IActorRef actorReference, ICommandReceiver< TAuthenticationToken > commandReceiver)
 Instantiates a new instance of ConcurrentAkkaCommandPublisher<TAuthenticationToken,TTarget>. More...
 
void Publish< TCommand > (TCommand command)
 Publishes the provided command on the CommandReceiver. More...
 
void Publish< TCommand > (IEnumerable< TCommand > commands)
 Publishes the provided commands on the CommandReceiver. More...
 
virtual TEvent PublishAndWait< TCommand, TEvent > (TCommand command, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits for an event of TEvent More...
 
TEvent PublishAndWait< TCommand, TEvent > (TCommand command, int millisecondsTimeout, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits for an event of TEvent or exits if the specified timeout is expired. More...
 
TEvent PublishAndWait< TCommand, TEvent > (TCommand command, TimeSpan timeout, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits for an event of TEvent or exits if the specified timeout is expired. More...
 
TEvent PublishAndWait< TCommand, TEvent > (TCommand command, Func< IEnumerable< IEvent< TAuthenticationToken >>, TEvent > condition, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits until the specified condition is satisfied an event of TEvent More...
 
TEvent PublishAndWait< TCommand, TEvent > (TCommand command, Func< IEnumerable< IEvent< TAuthenticationToken >>, TEvent > condition, int millisecondsTimeout, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits for an event of TEvent or exits if the specified timeout is expired. More...
 
TEvent PublishAndWait< TCommand, TEvent > (TCommand command, Func< IEnumerable< IEvent< TAuthenticationToken >>, TEvent > condition, TimeSpan timeout, IEventReceiver< TAuthenticationToken > eventReceiver=null)
 Publishes the provided command and waits for an event of TEvent or exits if the specified timeout is expired. More...
 

Properties

IActorRef ActorReference [get]
 Gets the IActorRef. More...
 
ICommandReceiver< TAuthenticationToken > CommandReceiver [get]
 Gets the ICommandReceiver<TAuthenticationToken>. More...
 

Detailed Description

A IAkkaCommandPublisher<TAuthenticationToken> that ensure concurrency regardless of what it passes the command onto as it is a ReceiveActor

Template Parameters
TAuthenticationTokenThe Type of the authentication token.
TTargetThe Type of the object that is targeted that needs concurrency.