示例#1
0
        public EntityEventStore <T> GenerateEventStore <T>(
            IUniquePropertyDetector uniquePropertyDetector, IMessageBus eventBus)
        {
            EventStoreContext factory() => new EventStoreContext(_options);

            return(new EntityEventStore <T>(factory, uniquePropertyDetector, TypeResolver, JsonProcessor, eventBus));
        }
示例#2
0
 private IReadOnlyDictionary <string, string> GetUniqueProperties(object source)
 {
     return(_uniquePropertyDetector switch
     {
         IUniquePropertyDetector service => service.GetUniqueProperties(source),
         _ => ImmutableDictionary <string, string> .Empty,
     });
示例#3
0
 public EntityEventStore(Func <EventStoreContext> contextFactory,
                         IUniquePropertyDetector uniquePropertyDetector,
                         TypeResolver typeResolver,
                         IJsonProcessor jsonProcessor,
                         IMessageBus eventBus)
 {
     _contextFactory         = contextFactory;
     _uniquePropertyDetector = uniquePropertyDetector;
     _typeResolver           = typeResolver;
     _jsonProcessor          = jsonProcessor;
     _publisher = new EventPublisher(contextFactory, typeResolver, jsonProcessor, eventBus);
 }
示例#4
0
 public EntityEventStore <State1> GenerateEventStore(
     IUniquePropertyDetector uniquePropertyDetector, IMessageBus eventBus)
 {
     return(GenerateEventStore <State1>(uniquePropertyDetector, eventBus));
 }