internal UnleashMetricServiceImpl(UnleashConfig unleashConfig, UnleashMetricsSender unleashMetricsSender, IUnleashScheduledExecutor executor) { _currentMetricsBucket = new MetricsBucket(); _started = DateTime.UtcNow; _unleashConfig = unleashConfig; _metricsInterval = unleashConfig.SendMetricsInterval; _unleashMetricsSender = unleashMetricsSender; _unleashExecutor = executor; executor.SetInterval(async s => await SendMetrics(s), _metricsInterval, _metricsInterval); }
public FeatureToggleRepository( UnleashConfig unleashConfig, IUnleashScheduledExecutor executor, IToggleFetcher toggleFetcher, IToggleBackupHandler toggleBackupHandler) { _toggleBackupHandler = toggleBackupHandler; _toggleFetcher = toggleFetcher; _toggleCollection = toggleBackupHandler.Read(); _executor = executor; _executor.SetInterval(s => UpdateToggles(s).Wait(), 0, unleashConfig.FetchTogglesInterval); }
public UnleashMetricServiceImpl(UnleashConfig unleashConfig, IUnleashScheduledExecutor executor) : this(unleashConfig, new UnleashMetricsSender(unleashConfig), executor) { }