public RingEventSnapshootHandler(
            IAssemblyProvider assemblyProvider
            , ISnapshootStoreFactory snapshootStoreFactory
            , IEventRebuildHandler eventRebuildHandler
            , ISubscribeEventStore subscribeEventStore
            , ISnapshootCache snapshootCache
            , ILoggerFactory loggerFactory
            , IEventHandleSubject eventHandleSubject
            , int maxHandleCount)
            : base(maxHandleCount)
        {
            this._assemblyProvider = assemblyProvider;
            _snapshootStoreFactory = snapshootStoreFactory;
            _eventRebuildHandler   = eventRebuildHandler;
            _subscribeEventStore   = subscribeEventStore;
            _snapshootCache        = snapshootCache;
            _logger             = loggerFactory.CreateLogger <RingEventSnapshootHandler>();
            _eventHandleSubject = eventHandleSubject;


            this.Initialize(assemblyProvider.Assemblys);

            var subscribeEvent = _subscribeEventStore.Get(_defaultSubscribeId);

            if (subscribeEvent != null)
            {
                _subscribeEvent = subscribeEvent;
            }
        }
 public EventRebuildInitializer(
     ISubscribeEventStore subscribeEventStore
     , IEventStore eventStore
     , IEventBus eventBus
     , ILoggerFactory loggerFactory)
 {
     _subscribeEventStore = subscribeEventStore;
     _eventStore          = eventStore;
     _eventBus            = eventBus;
     _logger = loggerFactory.CreateLogger <EventRebuildInitializer>();
 }
        public RingEventBusinessHandler(
            IEventRegister eventRegister
            , IEventHandlerFactory eventHandlerFactory
            , ISubscribeEventStore subscribeEventStore
            , ILoggerFactory loggerFactory
            , IEventHandleSubject eventHandleSubject
            , int maxHandleCount)
            : base(maxHandleCount)
        {
            _eventRegister       = eventRegister;
            _eventHandlerFactory = eventHandlerFactory;
            _subscribeEventStore = subscribeEventStore;
            _logger             = loggerFactory.CreateLogger <RingEventBusinessHandler>();
            _eventHandleSubject = eventHandleSubject;


            var subscribeEvent = _subscribeEventStore.Get(_defaultSubscribeId);

            if (subscribeEvent != null)
            {
                _subscribeEvent = subscribeEvent;
            }
        }