Class ReadModelReactorInvoker

Namespace
Cratis.Chronicle.ReadModels
Assembly
Cratis.Chronicle.dll

Represents an implementation of IReadModelReactorInvoker.

public class ReadModelReactorInvoker : IReadModelReactorInvoker
Inheritance
ReadModelReactorInvoker
Implements
Inherited Members
Extension Methods

Constructors

ReadModelReactorInvoker(IReactorSideEffectHandlers, IReactorContextValuesBuilder, ILogger<ReadModelReactorInvoker>)

Represents an implementation of IReadModelReactorInvoker.

public ReadModelReactorInvoker(IReactorSideEffectHandlers sideEffectHandlers, IReactorContextValuesBuilder contextValuesBuilder, ILogger<ReadModelReactorInvoker> logger)

Parameters

sideEffectHandlers IReactorSideEffectHandlers

The IReactorSideEffectHandlers used to append returned events as side effects.

contextValuesBuilder IReactorContextValuesBuilder

The IReactorContextValuesBuilder used to resolve append-metadata for side-effect events.

logger ILogger<ReadModelReactorInvoker>

The ILogger<TCategoryName> for logging.

Methods

Invoke(IEventStore, object, ReadModelReactorMethod, object?, EventContext, IServiceProvider)

Invoke a read model reactor handler method for a change.

public Task Invoke(IEventStore eventStore, object reactor, ReadModelReactorMethod method, object? readModel, EventContext changeContext, IServiceProvider serviceProvider)

Parameters

eventStore IEventStore

The IEventStore used to append any side-effect events.

reactor object

The reactor instance.

method ReadModelReactorMethod

The ReadModelReactorMethod to invoke.

readModel object

The read model instance that changed, if any.

changeContext EventContext

The EventContext of the event that caused the change.

serviceProvider IServiceProvider

The IServiceProvider used to resolve additional dependencies.

Returns

Task

A Task representing the asynchronous operation.