public CategoryEntity( ISearchableCategoryIndexer categoryIndexer, IEventStore <Core.Aggregates.Category> eventStore, IEventsApplier eventsApplier, ITypeResolver typeResolver) { _categoryIndexer = categoryIndexer; _eventStore = eventStore; _eventsApplier = eventsApplier; _typeResolver = typeResolver; this.PendingEvents = new List <PendingEvent>(); }
public EventStore( ITableClientProvider tableClientProvider, IEventDataBuilder eventDataBuilder, IStreamProvider <T> streamProvider, IEventsApplier eventsApplier, ITypeResolver typeResolver) { _eventDataBuilder = eventDataBuilder; _streamProvider = streamProvider; _eventsApplier = eventsApplier; _typeResolver = typeResolver; _lazyTableClient = new AsyncLazy <CloudTable>(() => tableClientProvider.Get($"{typeof(T).Name}{STREAMS_TABLE_SUFFIX}")); }
public ApplicationEntity( ISearchableApplicationIndexer applicationIndexer, IEventStore <Core.Aggregates.Application> eventStore, IMapper mapper, IEventsApplier eventsApplier, ITypeResolver typeResolver) { _applicationIndexer = applicationIndexer; _eventStore = eventStore; _mapper = mapper; _eventsApplier = eventsApplier; _typeResolver = typeResolver; this.PendingEvents = new List <PendingEvent>(); }