Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/sq/SQStaticState.java @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-artifacts/src/main/java/org/dive4elements/river/artifacts/states/sq/SQStaticState.java@bd047b71ab37 |
children | 4897a58c8746 |
comparison
equal
deleted
inserted
replaced
5837:d9901a08d0a6 | 5838:5aa05a7a34b7 |
---|---|
1 package org.dive4elements.river.artifacts.states.sq; | |
2 | |
3 import java.text.DateFormat; | |
4 import java.util.List; | |
5 | |
6 | |
7 import org.apache.log4j.Logger; | |
8 | |
9 import org.dive4elements.artifactdatabase.state.Facet; | |
10 import org.dive4elements.river.artifacts.FLYSArtifact; | |
11 import org.dive4elements.river.artifacts.access.StaticSQRelationAccess; | |
12 import org.dive4elements.river.artifacts.model.sq.StaticSQContainer; | |
13 import org.dive4elements.river.artifacts.model.sq.StaticSQFactory; | |
14 import org.dive4elements.river.artifacts.model.sq.StaticSQRelation; | |
15 import org.dive4elements.river.artifacts.states.StaticState; | |
16 | |
17 | |
18 public class SQStaticState | |
19 extends StaticState | |
20 { | |
21 private static final Logger log = | |
22 Logger.getLogger(SQStaticState.class); | |
23 | |
24 public SQStaticState() { | |
25 super(); | |
26 } | |
27 | |
28 public SQStaticState(String name) { | |
29 super(name); | |
30 } | |
31 | |
32 @Override | |
33 public Object staticCompute( | |
34 List<Facet> facets, | |
35 FLYSArtifact artifact | |
36 ) { | |
37 StaticSQRelationAccess access = new StaticSQRelationAccess(artifact); | |
38 | |
39 String river = access.getRiver(); | |
40 String measurementStation = access.getMeasurementStation(); | |
41 | |
42 int ms = -1; | |
43 try { | |
44 ms = Integer.parseInt(measurementStation); | |
45 } | |
46 catch (NumberFormatException nfe) { | |
47 log.error("Unparseable measurement station: " + measurementStation); | |
48 return null; | |
49 } | |
50 | |
51 StaticSQContainer sqRelations = | |
52 StaticSQFactory.getSQRelations(river, ms); | |
53 | |
54 for (StaticSQRelation.Parameter p: StaticSQRelation.Parameter.values()) { | |
55 | |
56 List<StaticSQRelation> relations = | |
57 sqRelations.getRelationsByParameter(p); | |
58 | |
59 if (!relations.isEmpty()) { | |
60 int count = 0; | |
61 | |
62 for (StaticSQRelation relation : relations) { | |
63 String name = "sq_" + p.toString().toLowerCase() + "_curve"; | |
64 DateFormat df = | |
65 DateFormat.getDateInstance(DateFormat.SHORT); | |
66 String desc = p.toString() + ": " + | |
67 df.format(relation.getStartTime()) + " - " + | |
68 df.format(relation.getStopTime()); | |
69 facets.add(new StaticSQRelationFacet( | |
70 count, | |
71 name, | |
72 desc, | |
73 relation)); | |
74 count++; | |
75 } | |
76 } | |
77 } | |
78 return null; | |
79 } | |
80 } |