Skip to content

Commit 481ab12

Browse files
enhancing TimeSeriesProcessor
1 parent ae9da09 commit 481ab12

File tree

3 files changed

+33
-8
lines changed

3 files changed

+33
-8
lines changed

src/main/java/edu/ie3/datamodel/io/processor/timeseries/FieldSourceToMethod.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,7 @@ public enum FieldSource {
2525
WEATHER_IRRADIANCE,
2626
WEATHER_TEMPERATURE,
2727
WEATHER_WIND,
28+
GROUND_TEMPERATURE_ONE,
29+
GROUND_TEMPERATURE_TWO,
2830
}
2931
}

src/main/java/edu/ie3/datamodel/io/processor/timeseries/TimeSeriesProcessor.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,17 @@ private SortedMap<String, FieldSourceToMethod> buildFieldToSource(
172172
.forEach(addFunction.apply(WEATHER_IRRADIANCE));
173173
mapFieldNameToGetter(TemperatureValue.class).forEach(addFunction.apply(WEATHER_TEMPERATURE));
174174
mapFieldNameToGetter(WindValue.class).forEach(addFunction.apply(WEATHER_WIND));
175+
Map<String, GetterMethod> groundTempMap = mapFieldNameToGetter(GroundTemperatureValue.class);
176+
groundTempMap.forEach(
177+
(fieldName, getter) ->
178+
addFunction
179+
.apply(GROUND_TEMPERATURE_ONE)
180+
.accept("groundTemperatureValueOne", getter));
181+
groundTempMap.forEach(
182+
(fieldName, getter) ->
183+
addFunction
184+
.apply(GROUND_TEMPERATURE_TWO)
185+
.accept("groundTemperatureValueTwo", getter));
175186

176187
} else if (valueClass.equals(BdewLoadValues.class)) {
177188

@@ -272,6 +283,22 @@ private Map<String, String> handleEntry(T timeSeries, E entry) throws EntityProc
272283

273284
Map<String, GetterMethod> windFieldToMethod = extractFieldToMethod(WEATHER_WIND);
274285
valueResult.putAll(processObject(weatherValue.getWind(), windFieldToMethod));
286+
287+
Map<String, GetterMethod> groundTempOneFieldToMethod =
288+
extractFieldToMethod(GROUND_TEMPERATURE_ONE);
289+
if (weatherValue.getGroundTemperatureValueOne().isPresent()) {
290+
valueResult.putAll(
291+
processObject(
292+
weatherValue.getGroundTemperatureValueOne().get(), groundTempOneFieldToMethod));
293+
}
294+
295+
Map<String, GetterMethod> groundTempTwoFieldToMethod =
296+
extractFieldToMethod(GROUND_TEMPERATURE_TWO);
297+
if (weatherValue.getGroundTemperatureValueTwo().isPresent()) {
298+
valueResult.putAll(
299+
processObject(
300+
weatherValue.getGroundTemperatureValueTwo().get(), groundTempTwoFieldToMethod));
301+
}
275302
}
276303

277304
/* Join all information and sort them */

src/test/groovy/edu/ie3/test/common/TimeSeriesTestData.groovy

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -185,8 +185,8 @@ trait TimeSeriesTestData {
185185
new SolarIrradianceValue(Quantities.getQuantity(5d, StandardUnits.SOLAR_IRRADIANCE), Quantities.getQuantity(10d, StandardUnits.SOLAR_IRRADIANCE)),
186186
new TemperatureValue(Quantities.getQuantity(5d, CELSIUS)),
187187
new WindValue(Quantities.getQuantity(5d, DEGREE_GEOM), Quantities.getQuantity(10d, METRE_PER_SECOND)),
188-
null,
189-
null
188+
Optional.empty(),
189+
Optional.empty()
190190
)
191191
),
192192
new TimeBasedValue<>(
@@ -196,8 +196,8 @@ trait TimeSeriesTestData {
196196
new SolarIrradianceValue(Quantities.getQuantity(15d, StandardUnits.SOLAR_IRRADIANCE), Quantities.getQuantity(20d, StandardUnits.SOLAR_IRRADIANCE)),
197197
new TemperatureValue(Quantities.getQuantity(15d, CELSIUS)),
198198
new WindValue(Quantities.getQuantity(15d, DEGREE_GEOM), Quantities.getQuantity(20d, METRE_PER_SECOND)),
199-
null,
200-
null
199+
Optional.empty(),
200+
Optional.empty()
201201
)
202202
),
203203
new TimeBasedValue<>(
@@ -223,8 +223,6 @@ trait TimeSeriesTestData {
223223
"temperature" : "5.0",
224224
"time" : "2020-04-02T10:00:00Z",
225225
"velocity" : "10.0",
226-
"groundTemperatureValueOne" : "10.0",
227-
"groundTemperatureValueTwo" : "10.0"
228226
] as LinkedHashMap,
229227
[
230228
"coordinate" : "{\"type\":\"Point\",\"coordinates\":[7.412152,51.492758],\"crs\":{\"type\":\"name\",\"properties\":{\"name\":\"EPSG:4326\"}}}",
@@ -234,8 +232,6 @@ trait TimeSeriesTestData {
234232
"temperature" : "15.0",
235233
"time" : "2020-04-02T10:15:00Z",
236234
"velocity" : "20.0",
237-
"groundTemperatureValueOne" : "10.0",
238-
"groundTemperatureValueTwo" : "10.0"
239235
] as LinkedHashMap,
240236
[
241237
"coordinate" : "{\"type\":\"Point\",\"coordinates\":[7.412152,51.492758],\"crs\":{\"type\":\"name\",\"properties\":{\"name\":\"EPSG:4326\"}}}",

0 commit comments

Comments
 (0)