Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/model/minfo/SedimentLoadDataValueFilter.java @ 8180:00066d3add94
The existing implementation respects the fact that months are 0-based.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Wed, 03 Sep 2014 18:21:35 +0200 |
parents | 9ecd6267323b |
children | a1ceacf15d3a |
comparison
equal
deleted
inserted
replaced
8179:705f8b92fd66 | 8180:00066d3add94 |
---|---|
9 | 9 |
10 import java.util.ArrayList; | 10 import java.util.ArrayList; |
11 import java.util.Calendar; | 11 import java.util.Calendar; |
12 import java.util.Date; | 12 import java.util.Date; |
13 import java.util.List; | 13 import java.util.List; |
14 | |
15 import org.dive4elements.river.utils.DateUtil; | |
14 | 16 |
15 import org.dive4elements.river.artifacts.model.minfo.SedimentLoadData.Value; | 17 import org.dive4elements.river.artifacts.model.minfo.SedimentLoadData.Value; |
16 import org.dive4elements.river.artifacts.model.minfo.SedimentLoadData.Value.Filter; | 18 import org.dive4elements.river.artifacts.model.minfo.SedimentLoadData.Value.Filter; |
17 | 19 |
18 public final class SedimentLoadDataValueFilter { | 20 public final class SedimentLoadDataValueFilter { |
129 public TimeRangeIntersects(int year) { | 131 public TimeRangeIntersects(int year) { |
130 this(year, year); | 132 this(year, year); |
131 } | 133 } |
132 | 134 |
133 public TimeRangeIntersects(int startYear, int endYear) { | 135 public TimeRangeIntersects(int startYear, int endYear) { |
134 this(firstJan(Math.min(startYear, endYear)), | 136 this(DateUtil.getStartDateFromYear(Math.min(startYear, endYear)), |
135 lastDec(Math.max(startYear, endYear))); | 137 DateUtil.getEndDateFromYear(Math.max(startYear, endYear))); |
136 } | |
137 | |
138 private static Date firstJan(int year) { | |
139 Calendar cal = Calendar.getInstance(); | |
140 cal.set(year, 1, 1, 0, 0, 0); | |
141 return cal.getTime(); | |
142 } | |
143 | |
144 private static Date lastDec(int year) { | |
145 Calendar cal = Calendar.getInstance(); | |
146 cal.set(year, 12, 31, 23, 59, 59); | |
147 return cal.getTime(); | |
148 } | 138 } |
149 | 139 |
150 public TimeRangeIntersects(Date a, Date b) { | 140 public TimeRangeIntersects(Date a, Date b) { |
151 if (a.after(b)) { | 141 if (a.after(b)) { |
152 this.b = a; | 142 this.b = a; |