private async Task SendPoint(string socketId, RawDataRange dataRange) { try { _logger.LogDebug("Sending raw point..."); var message = JsonConvert.SerializeObject(dataRange); await _sender.Send(socketId, message); } catch (Exception exception) { _logger.LogError(new EventId(106), exception, "Error sending raw point"); } }
public void DontMergeAfterEndRaw() { var range = new RawDataRange(100, 200, new List <double> { 100, 10, 150, 15, 200, 20 }); var newRange = new RawDataRange(new TimeRange(250, 300), new List <double> { 250, 25, 300, 30 }); var actual = _rawMerger.MergeRangeWithRanges(new List <RawDataRange> { range }, newRange); var expected = new List <RawDataRange> { range, newRange }; actual.Should().BeEquivalentTo(expected); }
public void MergeTouchingEndRaw() { var range = new RawDataRange(100, 200, new List <double> { 100, 10, 150, 15, 200, 20 }); var newRange = new RawDataRange(new TimeRange(200, 250), new List <double> { 200, 20, 250, 25 }); var actual = _rawMerger.MergeRangeWithRanges(new List <RawDataRange> { range }, newRange); var expected = new List <RawDataRange> { new RawDataRange(100, 250, new List <double> { 100, 10, 150, 15, 200, 20, 250, 25 }) }; actual.Should().BeEquivalentTo(expected); }
public void MergeThreeRaw() { var one = new RawDataRange(1500112845, 1500112845, new List <double> { 1500112845, 10 }); var two = new RawDataRange(1500112845, 1500150214, new List <double> { 1500112845, 10, 1500150210, 11 }); var three = new RawDataRange(1500150214, 1500150215, new List <double> { 1500150215, 12 }); var actual = _rawMerger.MergeRangesWithRange(two, new [] { one, three }); var expected = new List <RawDataRange> { new RawDataRange(1500112845, 1500150215, new List <double> { 1500112845, 10, 1500150210, 11, 1500150215, 12 }) }; actual.Should().BeEquivalentTo(expected); }
public static IEnumerable <Datum> GetData(this RawDataRange source) { var i = 0; var datum = new Datum(); using (var dataEnumerator = source.Data.GetEnumerator()) { while (dataEnumerator.MoveNext()) { if (i % 2 == 1) { datum.Value = dataEnumerator.Current; yield return(datum); } else { datum.Time = dataEnumerator.Current; } i++; } } }
public async Task ReceiveRealtimeRaw(string sourceName, RawDataRange dataRange) { await _client.SendRealtimeRawData(sourceName, dataRange); }
public async Task NotifyRaw(Guid entity, Guid attribute, RawDataRange dataRange) { await _pusher.TriggerAsync(_configuration.ChannelName, $"{entity}_{attribute}_raw", JsonConvert.SerializeObject(dataRange, JsonSettings.Setttings)); }
public Task NotifyRealtime(string sourceName, [FromBody] RawDataRange dataRange) { _validator.ValidateAndThrow(dataRange); return(_processor.ReceiveRealtimeRaw(sourceName, dataRange)); }
public async Task AddRealtimeRawData(Guid dataSource, string sourceName, int aggregationSeconds, [FromBody] RawDataRange dataRange) { var(entity, attribute) = await _model.ResolveEntityAndAttribute(dataSource, sourceName); await _processor.ReceiveRealtimeRawData(entity, attribute, dataRange); }
public async Task ReceiveRealtimeRawData(Guid entity, Guid attribute, RawDataRange rawDataRange) { await _messenger.NotifyRaw(entity, attribute, rawDataRange); }
public Task NotifyRaw(Guid entity, Guid attribute, RawDataRange dataRange) { return(Task.CompletedTask); }