CQRS.NET  2.1
A lightweight enterprise framework to write CQRS, event-sourced and micro-service applications in hybrid multi-datacentre, on-premise and Azure environments.

◆ PublishAndWait< TCommand, TEvent >() [6/6]

TEvent Cqrs.Bus.InProcessBus< TAuthenticationToken >.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.

Parameters
commandThe TCommand to publish.
conditionA delegate to be executed over and over until it returns the TEvent that is desired, return null to keep trying.
timeoutA T:System.TimeSpan that represents the number of milliseconds to wait, or a TimeSpan that represents -1 milliseconds to wait indefinitely.
eventReceiverIf provided, is the IEventReceiver<TAuthenticationToken> that the event is expected to be returned on.

Implements Cqrs.Commands.IPublishAndWaitCommandPublisher< TAuthenticationToken >.

Type Constraints
TCommand :ICommand<TAuthenticationToken>