protected V addMetadatasIfNeeded(E observation, V value, S dataset, DbQuery query) { // TODO move to appropriate location addResultTime(observation, value); if (query.isExpanded()) { addValidTime(observation, value); addParameters(observation, value, query); addGeometry(observation, value, query); } else { if (dataset.getPlatform() .isMobile()) { addGeometry(observation, value, query); } } return value; }
@Override public TextValue createSeriesValueFor(TextDataEntity observation, TextDatasetEntity series, DbQuery query) { if (observation == null) { // do not fail on empty observations return null; } long timeend = observation.getTimeend().getTime(); long timestart = observation.getTimestart().getTime(); String observationValue = !getServiceInfo().isNoDataValue(observation) ? observation.getValue() : null; TextValue value = query.getParameters().isShowTimeIntervals() ? new TextValue(timestart, timeend, observationValue) : new TextValue(timeend, observationValue); if (query.isExpanded()) { addGeometry(observation, value); addValidTime(observation, value); } else if (series.getPlatform().isMobile()) { addGeometry(observation, value); } return value; }
@Override public CountValue createSeriesValueFor(CountDataEntity observation, CountDatasetEntity series, DbQuery query) { if (observation == null) { // do not fail on empty observations return null; } long timestart = observation.getTimestart().getTime(); long timeend = observation.getTimeend().getTime(); Integer observationValue = !getServiceInfo().isNoDataValue(observation) ? observation.getValue() : null; CountValue value = query.getParameters().isShowTimeIntervals() ? new CountValue(timestart, timeend, observationValue) : new CountValue(timeend, observationValue); if (query.isExpanded()) { addGeometry(observation, value); addValidTime(observation, value); } else if (series.getPlatform().isMobile()) { addGeometry(observation, value); } return value; }
@Override public MeasurementValue createSeriesValueFor(MeasurementDataEntity observation, MeasurementDatasetEntity series, DbQuery query) { if (observation == null) { // do not fail on empty observations return null; } long timeend = observation.getTimeend().getTime(); long timestart = observation.getTimestart().getTime(); Double observationValue = !getServiceInfo().isNoDataValue(observation) ? format(observation, series) : null; MeasurementValue value = query.getParameters().isShowTimeIntervals() ? new MeasurementValue(timestart, timeend, observationValue) : new MeasurementValue(timeend, observationValue); if (query.isExpanded()) { addGeometry(observation, value); addValidTime(observation, value); addParameter(observation, value); } else if (series.getPlatform().isMobile()) { addGeometry(observation, value); } return value; }