annotate flys-artifacts/src/main/java/de/intevation/flys/artifacts/access/SQRelationAccess.java @ 3729:e727e3ebdf85

Factored out a pure QW model to be more reusable. flys-artifacts/trunk@5402 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Sat, 08 Sep 2012 14:19:40 +0000
parents e7a67407dea1
children 048a02e29808
rev   line source
3209
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.artifacts.access;
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
2
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
3 import java.util.Date;
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
4
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
5 import org.apache.log4j.Logger;
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
6
3209
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
7 import de.intevation.flys.artifacts.FLYSArtifact;
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
8 import de.intevation.flys.artifacts.model.DateRange;
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
9
3209
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
10 public class SQRelationAccess
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
11 extends Access
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
12 {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
13 private static Logger log = Logger.getLogger(SQRelationAccess.class);
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
14
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
15 protected String river;
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
16
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
17 protected Double location;
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
18
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
19 protected DateRange period;
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
20
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
21 protected Double outliers;
3209
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
22
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
23 public SQRelationAccess() {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
24 }
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
25
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
26 public SQRelationAccess(FLYSArtifact artifact) {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
27 super(artifact);
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
28 }
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
29
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
30 public String getRiver() {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
31 if (river == null) {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
32 river = getString("river");
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
33 }
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
34 if (log.isDebugEnabled()) {
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
35 log.debug("river: '" + river + "'");
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
36 }
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
37 return river;
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
38 }
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
39
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
40 public Double getLocation() {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
41 if (location == null) {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
42 // XXX: The parameter name suggests plural!?
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
43 location = getDouble("ld_locations");
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
44 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
45
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
46 if (log.isDebugEnabled()) {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
47 log.debug("location: " + location);
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
48 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
49
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
50 return location;
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
51 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
52
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
53 public DateRange getPeriod() {
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
54 if (period == null) {
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
55 Long start = getLong("start");
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
56 Long end = getLong("end");
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
57
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
58 if (start != null && end != null) {
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
59 period = new DateRange(new Date(start), new Date(end));
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
60 }
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
61 }
3426
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
62
e7a67407dea1 Limited the input of time periods in SQ relation calculation to 1.
Ingo Weinzierl <ingo.weinzierl@intevation.de>
parents: 3210
diff changeset
63 return period;
3210
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
64 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
65
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
66 public Double getOutliers() {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
67 if (outliers == null) {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
68 outliers = getDouble("outliers");
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
69 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
70 if (log.isDebugEnabled()) {
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
71 log.debug("outliers: " + outliers);
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
72 }
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
73 return outliers;
ae14f412ba10 SQ: finished the access stuff.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents: 3209
diff changeset
74 }
3209
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
75 }
03fc05655258 SQ: Added artifact access stub.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
diff changeset
76 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org