@JsonIgnore public boolean hasReferenceValues() { return (metadata != null) && metadata.hasReferenceValues(); }
private void formatMetadata(Data<QuantityValue> seriesToFormat, FlotData flotSeries) { DatasetMetadata<QuantityValue> metadata = seriesToFormat.getMetadata(); Map<String, Data<QuantityValue>> referenceValues = metadata.getReferenceValues(); for (String referenceValueId : referenceValues.keySet()) { Data<QuantityValue> referenceValueData = metadata.getReferenceValues().get(referenceValueId); flotSeries.addReferenceValues(referenceValueId, formatSeries(referenceValueData)); } flotSeries.setValueBeforeTimespan(formatValue(metadata.getValueBeforeTimespan())); flotSeries.setValueAfterTimespan(formatValue(metadata.getValueAfterTimespan())); }
@Override public HighchartDataCollection format(DataCollection<Data<QuantityValue>> toFormat) { HighchartDataCollection dataCollection = new HighchartDataCollection(); for (String timeseriesId : toFormat.getAllSeries().keySet()) { Data<QuantityValue> seriesToFormat = toFormat.getSeries(timeseriesId); HighchartData series = createHighchartSeries(timeseriesId, seriesToFormat); dataCollection.addNewSeries(timeseriesId, series); if (seriesToFormat.hasMetadata()) { DatasetMetadata<QuantityValue> metadata = seriesToFormat.getMetadata(); if (metadata.hasReferenceValues()) { Map<String, Data<QuantityValue>> referenceValues = metadata.getReferenceValues(); for (String referenceValueId : referenceValues.keySet()) { Data<QuantityValue> timeseriesData = metadata.getReferenceValues().get(referenceValueId); HighchartData referenceSeries = createHighchartSeries(referenceValueId, timeseriesData); dataCollection.addNewSeries(referenceValueId, referenceSeries); } } series.setValueBeforeTimespan(formatValue(metadata.getValueBeforeTimespan())); series.setValueAfterTimespan(formatValue(metadata.getValueAfterTimespan())); } } return dataCollection; }
@Override protected Data<QuantityValue> assembleDataWithReferenceValues(QuantityDatasetEntity timeseries, DbQuery dbQuery, Session session) throws DataAccessException { Data<QuantityValue> result = assembleData(timeseries, dbQuery, session); List<QuantityDatasetEntity> referenceValues = timeseries.getReferenceValues(); if (referenceValues != null && !referenceValues.isEmpty()) { DatasetMetadata<QuantityValue> metadata = new DatasetMetadata<>(); metadata.setReferenceValues(assembleReferenceSeries(referenceValues, dbQuery, session)); result = assembleData(timeseries, dbQuery, metadata, session); } return result; }
Map<String, Data<QuantityValue>> referenceValues = metadata.getReferenceValues(); for (Entry<String, Data<QuantityValue>> referencedTimeseries : referenceValues.entrySet()) { String referenceTimeseriesId = referencedTimeseries.getKey();