Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/sq/SQPeriodSelect.java @ 8621:1125e598df0e
Fix handling of multiple entries in SQPeriodSelect default start/end calculation
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Wed, 25 Mar 2015 19:37:44 +0100 |
parents | 8737de2ca763 |
children | 124efb3eea94 |
comparison
equal
deleted
inserted
replaced
8620:8737de2ca763 | 8621:1125e598df0e |
---|---|
8 | 8 |
9 package org.dive4elements.river.artifacts.states.sq; | 9 package org.dive4elements.river.artifacts.states.sq; |
10 | 10 |
11 import java.util.Date; | 11 import java.util.Date; |
12 import java.util.List; | 12 import java.util.List; |
13 import java.util.Collections; | 13 import java.util.TreeSet; |
14 | 14 |
15 import org.apache.log4j.Logger; | 15 import org.apache.log4j.Logger; |
16 | 16 |
17 import org.w3c.dom.Element; | 17 import org.w3c.dom.Element; |
18 | 18 |
48 /* Bit of an overkill here but it will be cached and accessed | 48 /* Bit of an overkill here but it will be cached and accessed |
49 * in the next state anyway. */ | 49 * in the next state anyway. */ |
50 SQOverview overview = SQOverviewFactory.getOverview(access.getRiverName()); | 50 SQOverview overview = SQOverviewFactory.getOverview(access.getRiverName()); |
51 | 51 |
52 KMIndex<List<Date>> entries = overview.filter(new KmFilter(km)); | 52 KMIndex<List<Date>> entries = overview.filter(new KmFilter(km)); |
53 if (entries.size() == 0) { | 53 TreeSet<Date> allDates = new TreeSet<Date>(); |
54 return 0; | 54 |
55 for (int i = 0; i < entries.size(); i++) { | |
56 allDates.addAll(entries.get(i).getValue()); | |
55 } | 57 } |
56 List<Date> dates = entries.get(0).getValue(); | |
57 if (dates.isEmpty()) { | |
58 return 0; | |
59 } | |
60 Collections.sort(dates); | |
61 | 58 |
62 return minDate ? dates.get(0).getTime() : dates.get(dates.size() - 1).getTime(); | 59 return minDate ? allDates.first().getTime() : allDates.last().getTime(); |
63 } | 60 } |
64 | 61 |
65 @Override | 62 @Override |
66 protected Element[] createItems( | 63 protected Element[] createItems( |
67 XMLUtils.ElementCreator cr, | 64 XMLUtils.ElementCreator cr, |