コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EmbeddingStateUpdater"/> class.
 /// </summary>
 /// <param name="embedding">The <see cref="EmbeddingId"/> that identifies the embedding.</param>
 /// <param name="committedEvents">The <see cref="IFetchCommittedEvents"/> that is used to fetch aggregate events.</param>
 /// <param name="embeddingStore">The <see cref="IEmbeddingStore"/> that is used to persist the states.</param>
 /// <param name="logger">The <see cref="ILogger"/>.</param>
 public EmbeddingStateUpdater(
     EmbeddingId embedding,
     IFetchCommittedEvents committedEvents,
     IEmbeddingStore embeddingStore,
     IProjectManyEvents projectManyEvents,
     ILogger logger)
 {
     _embedding         = embedding;
     _committedEvents   = committedEvents;
     _embeddingStore    = embeddingStore;
     _projectManyEvents = projectManyEvents;
     _logger            = logger;
 }
コード例 #2
0
 /// <summary>
 /// Initializes an instance of the <see cref="StateTransitionEventsCalculator" /> class.
 /// </summary>
 /// <param name="identifier">The <see cref="EmbeddingId" />.</param>
 /// <param name="embedding">The <see cref="IEmbedding" />.</param>
 /// <param name="projector">The <see cref="IProjectManyEvents"/>.</param>
 /// <param name="stateComparer">The <see cref="ICompareStates"/>.</param>
 /// <param name="loopDetector">The <see cref="IDetectEmbeddingLoops"/>.</param>
 /// <param name="logger">The <see cref="ILogger"/>.</param>
 public StateTransitionEventsCalculator(
     EmbeddingId identifier,
     IEmbedding embedding,
     IProjectManyEvents projector,
     ICompareStates stateComparer,
     IDetectEmbeddingLoops loopDetector,
     ILogger logger)
 {
     _embeddingId   = identifier;
     _embedding     = embedding;
     _projector     = projector;
     _stateComparer = stateComparer;
     _loopDetector  = loopDetector;
     _logger        = logger;
 }
コード例 #3
0
 EmbeddingStateUpdater CreateEmbeddingStateUpdater(EmbeddingId embeddingId, IProjectManyEvents projectManyEvents)
 => new(embeddingId, _committedEventsFetcher, _embeddingStore, projectManyEvents, _loggerFactory.CreateLogger <EmbeddingStateUpdater>());