Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/GaugeTimerangeState.java @ 3785:a5f65e8983be
Merged revisions 5501-5502,5504-5508,5511-5513,5516-5519 via svnmerge from
file:///home/clients/bsh/bsh-generischer-viewer/Material/SVN/flys-artifacts/trunk
........
r5501 | felix | 2012-09-18 11:49:45 +0200 (Di, 18 Sep 2012) | 1 line
fix issue865 - missing showarea theme prop.
........
r5502 | clins | 2012-09-18 12:18:30 +0200 (Di, 18 Sep 2012) | 1 line
Add robustness checks to prevent NPEs
........
r5504 | felix | 2012-09-18 14:03:15 +0200 (Di, 18 Sep 2012) | 1 line
i18n for area label (fix issue487).
........
r5505 | clins | 2012-09-18 16:19:59 +0200 (Di, 18 Sep 2012) | 1 line
Update themes to show point descriptions
........
r5506 | rrenkert | 2012-09-18 17:00:30 +0200 (Di, 18 Sep 2012) | 3 lines
Removed incorrect characteristic diameter.
........
r5507 | rrenkert | 2012-09-18 17:03:20 +0200 (Di, 18 Sep 2012) | 3 lines
Fixed some stupid bugs in bed quality data factory and calculation.
........
r5508 | teichmann | 2012-09-18 17:45:49 +0200 (Di, 18 Sep 2012) | 1 line
The usual whitespace and import cleanups.
........
r5511 | teichmann | 2012-09-18 18:24:51 +0200 (Di, 18 Sep 2012) | 1 line
Use generics aware Collections.emptyList().
........
r5512 | teichmann | 2012-09-18 20:36:52 +0200 (Di, 18 Sep 2012) | 1 line
Some more little steps towards "Auslagerung extremer Wasserspiegellagen".
........
r5513 | clins | 2012-09-18 23:38:19 +0200 (Di, 18 Sep 2012) | 1 line
A and B facets of fix analyis are now deactivated by default
........
r5516 | bricks | 2012-09-19 10:45:51 +0200 (Mi, 19 Sep 2012) | 2 lines
Add the gauge station to the GaugeOverviewInfoService xml response
........
r5517 | rrenkert | 2012-09-19 10:50:23 +0200 (Mi, 19 Sep 2012) | 3 lines
Added CSV export to bed quality calculation.
........
r5518 | bricks | 2012-09-19 11:04:04 +0200 (Mi, 19 Sep 2012) | 2 lines
Fix date in changelog entry
........
r5519 | teichmann | 2012-09-19 11:17:14 +0200 (Mi, 19 Sep 2012) | 1 line
Removed trailing whitespace.
........
flys-artifacts/tags/2.9.1@5531 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Wed, 19 Sep 2012 14:58:31 +0000 |
parents | e86cd5176678 |
children | f6c73ee1b7f1 |
line wrap: on
line source
package de.intevation.flys.artifacts.states; import java.util.Calendar; import java.util.List; import org.apache.log4j.Logger; import org.hibernate.SQLQuery; import org.hibernate.Session; import org.hibernate.type.StandardBasicTypes; import de.intevation.flys.artifacts.FLYSArtifact; import de.intevation.flys.backend.SessionHolder; import de.intevation.flys.model.Gauge; import de.intevation.flys.utils.FLYSUtils; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class GaugeTimerangeState extends IntRangeState { private static final Logger logger = Logger.getLogger(GaugeTimerangeState.class); protected int[] getLowerUpper(FLYSArtifact flys) { Gauge gauge = FLYSUtils.getReferenceGauge(flys); if (gauge == null) { logger.warn("No reference gauge specified!"); return new int[] { 0, 0 }; } Session session = SessionHolder.HOLDER.get(); SQLQuery query = session.createSQLQuery( "SELECT min(start_time) as min, max(stop_time) as max " + "FROM time_intervals WHERE id in " + "(SELECT time_interval_id FROM discharge_tables " + "WHERE gauge_id =:gid)"); query.addScalar("min", StandardBasicTypes.CALENDAR); query.addScalar("max", StandardBasicTypes.CALENDAR); query.setInteger("gid", gauge.getId()); List<?> results = query.list(); if (results != null) { Object[] res = (Object[]) results.get(0); Calendar lo = (Calendar) res[0]; Calendar up = (Calendar) res[1]; if (lo != null && up != null) { return new int[] { lo.get(Calendar.YEAR), up.get(Calendar.YEAR) }; } } logger.warn("Could not determine time range for gauge: " + gauge); return null; } @Override protected Object getLower(FLYSArtifact flys) { int[] lowerUpper = getLowerUpper(flys); return lowerUpper != null ? lowerUpper[0] : 0; } @Override protected Object getUpper(FLYSArtifact flys) { int[] lowerUpper = getLowerUpper(flys); return lowerUpper != null ? lowerUpper[1] : 0; } @Override protected String getUIProvider() { return "gaugetimerange"; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 :