//ctor
 public CheckLockExpirationCommand(ILockTracker <TKey> lockTracker, ISignalDispatchQueries <TKey> dispatchQueries,
                                   SenderSettings settings)
 {
     _lockTracker     = lockTracker;
     _dispatchQueries = dispatchQueries;
     _settings        = settings;
 }
 //init
 public DirectSignalProvider(IEventQueue <TKey> eventQueues, IDispatchQueue <TKey> dispatchQueues,
                             IMonitor <TKey> eventSink, ISignalEventQueries <TKey> eventQueries,
                             ISignalDispatchQueries <TKey> dispatchQueries, SenderSettings senderSettings)
     : base(eventQueues, dispatchQueues, eventSink, eventQueries, dispatchQueries, senderSettings)
 {
     _isStarted = false;
 }
示例#3
0
 //init
 public BaseSignalProvider(IEventQueue <TKey> eventQueue, IDispatchQueue <TKey> dispatchQueue, IMonitor <TKey> eventSink,
                           ISignalEventQueries <TKey> eventQueries, ISignalDispatchQueries <TKey> dispatchQueries, SenderSettings senderSettings)
 {
     _eventQueue      = eventQueue;
     _dispatchQueue   = dispatchQueue;
     _monitor         = eventSink;
     _eventQueries    = eventQueries;
     _dispatchQueries = dispatchQueries;
     _senderSettings  = senderSettings;
 }
 //ctor
 public ConsolidateDispatchCommand(ILogger logger, ISignalDispatchQueries <TKey> signalDispatchQueries,
                                   IDispatchQueue <TKey> dispatchQueue, IEnumerable <ITemplateDataConsolidator> consolidators,
                                   IEventSettingsQueries <TKey> eventSettingsQueries)
 {
     _logger = logger;
     _signalDispatchQueries = signalDispatchQueries;
     _dispatchQueue         = dispatchQueue;
     _consolidators         = consolidators.ToArray();
     _eventSettingsQueries  = eventSettingsQueries;
 }
示例#5
0
 //init
 public SignalServiceInstanceProvider(IEventQueue <TKey> eventQueues, IDispatchQueue <TKey> dispatchQueues,
                                      IMonitor <TKey> eventSink, ISignalEventQueries <TKey> eventQueries,
                                      ISignalDispatchQueries <TKey> dispatchQueries, SenderSettings senderSettings)
 {
     _eventQueues     = eventQueues;
     _dispatchQueues  = dispatchQueues;
     _monitor         = eventSink;
     _eventQueries    = eventQueries;
     _dispatchQueries = dispatchQueries;
     _senderSettings  = senderSettings;
 }
        //init
        public DatabaseDispatchProvider(IDispatchQueue <TKey> dispatchQueue, IMonitor <TKey> eventSink, SenderSettings senderSettings,
                                        IDispatchChannelRegistry <TKey> dispatcherRegistry, ISignalDispatchQueries <TKey> dispatchQueries, ILogger logger,
                                        ILockTracker <TKey> lockTracker, IConsolidationLockTracker <TKey> consolidationLockTracker)
        {
            _dispatchQueue            = dispatchQueue;
            _monitor                  = eventSink;
            _dispatcherRegistry       = dispatcherRegistry;
            _dispatchQueries          = dispatchQueries;
            _logger                   = logger;
            _lockTracker              = lockTracker;
            _consolidationLockTracker = consolidationLockTracker;
            _senderSettings           = senderSettings;

            QueryPeriod       = senderSettings.DatabaseSignalProviderQueryPeriod;
            ItemsQueryCount   = senderSettings.DatabaseSignalProviderItemsQueryCount;
            MaxFailedAttempts = senderSettings.DatabaseSignalProviderItemsMaxFailedAttempts;
        }
示例#7
0
        //init
        public SignalDispatchFlushJob(SenderSettings senderSettings, ITemporaryStorage <SignalDispatch <TKey> > temporaryStorage,
                                      ISignalDispatchQueries <TKey> dispatchQueries, ILockTracker <TKey> dispatchLockTracker,
                                      IConsolidationLockTracker <TKey> consolidationLockTracker)
            : base(senderSettings, temporaryStorage, dispatchQueries)
        {
            _dispatchQueries          = dispatchQueries;
            _dispatchLockTracker      = dispatchLockTracker;
            _consolidationLockTracker = consolidationLockTracker;

            IsTemporaryStorageEnabled   = senderSettings.SignalQueueIsTemporaryStorageEnabled;
            _temporaryStorageParameters = new TemporaryStorageParameters()
            {
                QueueType     = NotificationsConstants.TS_DISPATCH_QUEUE_KEY,
                EntityVersion = NotificationsConstants.TS_ENTITIES_VERSION
            };

            //how to flush items
            _flushQueues[FlushAction.DeleteConsolidated] = new FlushQueue <SignalWrapper <SignalDispatch <TKey> > >(signals => DeleteConsolidatedDispatches(signals));

            //what to do after flushing
            _flushedItemsHandlers.Add(ForgetDispatchLocks);
            _flushedItemsHandlers.Add(ForgetConsolidationLocks);
        }
示例#8
0
 public SignalService(IEventQueue <TKey> eventQueue, IDispatchQueue <TKey> dispatchQueue, IMonitor <TKey> eventSink,
                      ISignalEventQueries <TKey> eventQueries, ISignalDispatchQueries <TKey> dispatchQueries, SenderSettings senderSettings)
     : base(eventQueue, dispatchQueue, eventSink, eventQueries, dispatchQueries, senderSettings)
 {
 }
 public DatabaseDispatchProvider(IDispatchQueue <TKey> dispatchQueues, IMonitor <TKey> eventSink, SenderSettings senderSettings,
                                 IDispatchChannelRegistry <TKey> dispatcherRegistry, ISignalDispatchQueries <TKey> dispatchQueries,
                                 ILogger logger, IChangeNotifier <SignalDispatch <TKey> > changeNotifier,
                                 ILockTracker <TKey> lockTracker, IConsolidationLockTracker <TKey> consolidationLockTracker)
     : this(dispatchQueues, eventSink, senderSettings, dispatcherRegistry, dispatchQueries, logger, lockTracker, consolidationLockTracker)
 {
     _changeNotifier = changeNotifier;
 }