예제 #1
0
 public TriggerActionReloadService(IOptions <ReloadSettings> settings,
                                   IServiceProvider provider,
                                   ITriggerActionCache cache,
                                   ILogger <TriggerActionReloadService> logger) :
     base(settings.Value.StartDelay, settings.Value.Interval, logger)
 {
     this.m_logger   = logger;
     this.m_cache    = cache;
     this.m_provider = provider;
 }
 public MqttRegexTriggerHandler(
     ILogger <MqttRegexTriggerHandler> logger,
     IRegexMatchingService matcher,
     IServiceProvider provider,
     IInternalMqttClient client,
     IOptions <MqttConfig> options,
     ITriggerActionCache cache
     )
 {
     this.m_logger         = logger;
     this.m_regexMatcher   = matcher;
     this.m_client         = client;
     this.m_eventsTopic    = options.Value.InternalBroker.TriggerEventTopic;
     this.m_cache          = cache;
     this.m_provider       = provider;
     this.m_matchCounter   = Metrics.CreateCounter("triggerservice_messages_matched_total", "Total amount of measurements that matched a trigger.");
     this.m_messageCounter = Metrics.CreateCounter("triggerservice_messages_received_total", "Total amount of messages received.");
     this.m_duration       = Metrics.CreateHistogram("triggerservice_message_handle_duration_seconds", "Histogram of message handling duration.");
 }