/// <summary> /// Initializes a new instance of the <see cref="DataPointProcessorsService"/> class. /// </summary> /// <param name="dataPointProcessors">Actual <see cref="IDataPointProcessors"/>.</param> /// <param name="logger"><see cref="ILogger"/> for logging.</param> public DataPointProcessorsService( IDataPointProcessors dataPointProcessors, ILogger logger) { _dataPointProcessors = dataPointProcessors; _logger = logger; }
/// <summary> /// Initializes a new instance of the <see cref="DataPointsStatePullers"/> class. /// </summary> /// <param name="configuration">The <see cref="DataPointsStatePullersConfiguration"/>.</param> /// <param name="processors"><see cref="IDataPointProcessors"/> for processing.</param> /// <param name="timers"><see cref="ITimers"/> for scheduling.</param> /// <param name="logger"><see cref="ILogger"/> for logging.</param> public DataPointsStatePullers( DataPointsStatePullersConfiguration configuration, IDataPointProcessors processors, ITimers timers, ILogger logger) { _timers = timers; _configuration = configuration; _processors = processors; _logger = logger; }
/// <summary> /// Initializes a new instance of the <see cref="DataPointsStatePuller"/> class. /// </summary> /// <param name="endPoint"><see cref="DataPointsStateEndPoint"/> to pull from.</param> /// <param name="processors"><see cref="IDataPointProcessors"/> to involve when <see cref="DataPoint">data points</see> are pulled.</param> /// <param name="timers"><see cref="ITimers"/> for scheduling.</param> /// <param name="logger"><see cref="ILogger"/> for logging.</param> public DataPointsStatePuller( DataPointsStateEndPoint endPoint, IDataPointProcessors processors, ITimers timers, ILogger logger) { var channel = new Channel(endPoint.Target, ChannelCredentials.Insecure); _client = new DataPointsStateClient(channel); timers.Every(endPoint.Interval, async() => await Pull().ConfigureAwait(false)); _processors = processors; _logger = logger; _endPoint = endPoint; }