public RoutingPublishService(IRemoteLiveDataQueue liveDataQueue,
                              IRemoteTriggerQueue triggerQueue,
                              IRemoteStorageQueue remoteStorage,
                              IRemoteNetworkEventQueue remoteEvents,
                              IOptions <RoutingQueueSettings> options,
                              ILogger <RoutingPublishService> logger) : base(TimeSpan.FromSeconds(5), options.Value.InternalInterval, logger)
 {
     this.m_liveDataQueue      = liveDataQueue;
     this.m_remoteStorageQueue = remoteStorage;
     this.m_eventQueue         = remoteEvents;
     this.m_triggerQueue       = triggerQueue;
 }
Ejemplo n.º 2
0
 public CompositeRouter(IRoutingCache cache,
                        IQueue <IPlatformMessage> messageQueue,
                        IRemoteNetworkEventQueue eventQueue,
                        IOptions <RoutingQueueSettings> options,
                        ILogger <CompositeRouter> logger)
 {
     this.m_routers          = new List <IRouter>();
     this.m_lock             = new ReaderWriterLockSlim();
     this.m_cache            = cache;
     this.m_eventQueue       = eventQueue;
     this.m_messageQueue     = messageQueue;
     this.m_logger           = logger;
     this.m_dequeueBatchSize = options.Value.DequeueBatchSize ?? DequeueBatchSize;
     this.m_disposed         = false;
     this.m_dropCounter      = Metrics.CreateCounter("router_messages_dropped_total", "Total number of measurements/messages dropped.");
     this.m_counter          = Metrics.CreateCounter("router_messages_routed_total", "Total number of measurements/messages routed.");
     this.m_duration         = Metrics.CreateHistogram("router_duration_seconds", "Message routing duration.");
 }