@@ -208,23 +208,43 @@ public TreeSet<Measurement> getMeasurementsInSameRun(long variableId,
208208 public TreeSet <Measurement > getRunBefore (long variableId , String runType ,
209209 LocalDateTime time ) {
210210
211- Optional <Measurement > lastBefore = getMeasurements (variableId , runType )
212- .stream ().filter (m -> m .getTime ().isBefore (time ))
213- .reduce ((first , second ) -> second );
211+ TreeSet <Measurement > result ;
214212
215- return lastBefore .isEmpty () ? new TreeSet <Measurement >()
216- : getMeasurementsInSameRun (variableId , lastBefore .get ());
213+ List <Measurement > measurements = getMeasurements (variableId , runType );
217214
215+ if (null == measurements ) {
216+ result = new TreeSet <Measurement >();
217+ } else {
218+
219+ Optional <Measurement > lastBefore = getMeasurements (variableId , runType )
220+ .stream ().filter (m -> m .getTime ().isBefore (time ))
221+ .reduce ((first , second ) -> second );
222+
223+ result = lastBefore .isEmpty () ? new TreeSet <Measurement >()
224+ : getMeasurementsInSameRun (variableId , lastBefore .get ());
225+ }
226+
227+ return result ;
218228 }
219229
220230 public TreeSet <Measurement > getRunAfter (long variableId , String runType ,
221231 LocalDateTime time ) {
222232
223- Optional <Measurement > firstAfter = getMeasurements (variableId , runType )
224- .stream ().filter (m -> m .getTime ().isAfter (time )).findFirst ();
233+ TreeSet <Measurement > result ;
225234
226- return firstAfter .isEmpty () ? new TreeSet <Measurement >()
227- : getMeasurementsInSameRun (variableId , firstAfter .get ());
235+ List <Measurement > measurements = getMeasurements (variableId , runType );
236+
237+ if (null == measurements ) {
238+ result = new TreeSet <Measurement >();
239+ } else {
240+ Optional <Measurement > firstAfter = getMeasurements (variableId , runType )
241+ .stream ().filter (m -> m .getTime ().isAfter (time )).findFirst ();
242+
243+ result = firstAfter .isEmpty () ? new TreeSet <Measurement >()
244+ : getMeasurementsInSameRun (variableId , firstAfter .get ());
245+ }
246+
247+ return result ;
228248
229249 }
230250
0 commit comments