Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/SQRelation.java @ 3072:0d3dd8230064
Added component stubs for SQ relation calculation.
flys-artifacts/trunk@4663 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Thu, 14 Jun 2012 13:46:07 +0000 |
parents | df4d6b286af8 |
children | 8ad8a227d983 |
comparison
equal
deleted
inserted
replaced
3071:9136fc8f35f0 | 3072:0d3dd8230064 |
---|---|
1 package de.intevation.flys.artifacts.states; | 1 package de.intevation.flys.artifacts.states; |
2 | |
3 import java.util.ArrayList; | |
4 import java.util.List; | |
2 | 5 |
3 import org.apache.log4j.Logger; | 6 import org.apache.log4j.Logger; |
4 | 7 |
8 import de.intevation.artifacts.CallContext; | |
9 | |
10 import de.intevation.artifactdatabase.state.Facet; | |
11 | |
12 import de.intevation.flys.artifacts.FLYSArtifact; | |
13 import de.intevation.flys.artifacts.MINFOArtifact; | |
14 import de.intevation.flys.artifacts.model.DataFacet; | |
15 import de.intevation.flys.artifacts.model.FacetTypes; | |
16 import de.intevation.flys.artifacts.model.CalculationResult; | |
17 import de.intevation.flys.artifacts.model.sq.SQCurveFacet; | |
18 import de.intevation.flys.artifacts.model.sq.SQMeasurementFacet; | |
19 import de.intevation.flys.artifacts.model.sq.SQOutlierFacet; | |
20 import de.intevation.flys.artifacts.model.sq.SQRelationCalculation; | |
5 import de.intevation.flys.artifacts.states.DefaultState; | 21 import de.intevation.flys.artifacts.states.DefaultState; |
6 | 22 |
7 /** | 23 /** |
8 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> | 24 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> |
9 */ | 25 */ |
10 public class SQRelation extends DefaultState { | 26 public class SQRelation extends DefaultState implements FacetTypes { |
11 | 27 |
12 /** The logger used in this class. */ | |
13 private static Logger logger = Logger.getLogger(SQRelation.class); | 28 private static Logger logger = Logger.getLogger(SQRelation.class); |
14 | 29 |
15 | 30 |
16 /** | |
17 * The default constructor that initializes an empty State object. | |
18 */ | |
19 public SQRelation() { | 31 public SQRelation() { |
20 } | 32 } |
21 | 33 |
34 | |
22 @Override | 35 @Override |
23 protected String getUIProvider() { | 36 public Object computeAdvance( |
24 return "minfo.sq.relation"; | 37 FLYSArtifact artifact, |
38 String hash, | |
39 CallContext context, | |
40 List<Facet> facets, | |
41 Object old | |
42 ) { | |
43 logger.debug("SQRelation.computeAdvance"); | |
44 | |
45 List<Facet> newFacets = new ArrayList<Facet>(); | |
46 | |
47 CalculationResult res = old instanceof CalculationResult | |
48 ? (CalculationResult) old | |
49 : new SQRelationCalculation().calculate((MINFOArtifact) artifact); | |
50 | |
51 if (facets == null || res == null) { | |
52 return res; | |
53 } | |
54 | |
55 logger.error("Facet creation NOT IMPLEMENTED!"); | |
56 // TODO | |
57 //for (int idx = 0; idx < res.length; idx++) { | |
58 int idx = 0; | |
59 createFacets(newFacets, idx); | |
60 //} | |
61 | |
62 Facet csv = new DataFacet( | |
63 CSV, "CSV data", ComputeType.ADVANCE, hash, id); | |
64 | |
65 Facet pdf = new DataFacet( | |
66 PDF, "PDF data", ComputeType.ADVANCE, hash, id); | |
67 | |
68 newFacets.add(csv); | |
69 newFacets.add(pdf); | |
70 | |
71 logger.debug("Created " + newFacets.size() + " new Facets."); | |
72 | |
73 facets.addAll(newFacets); | |
74 | |
75 return res; | |
25 } | 76 } |
26 | 77 |
78 | |
79 protected void createFacets(List<Facet> container, int idx) { | |
80 // TODO Create facets for each parameter type (A-F) | |
81 Facet measurements, outliers, curve; | |
82 measurements = new SQMeasurementFacet(idx, SQ_A_MEASUREMENT, "TODO"); | |
83 outliers = new SQOutlierFacet(idx, SQ_A_OUTLIER, "TODO"); | |
84 curve = new SQCurveFacet(idx, SQ_A_CURVE, "TODO"); | |
85 | |
86 container.add(measurements); | |
87 container.add(outliers); | |
88 container.add(curve); | |
89 | |
90 measurements = new SQMeasurementFacet(idx, SQ_B_MEASUREMENT, "TODO"); | |
91 outliers = new SQOutlierFacet(idx, SQ_B_OUTLIER, "TODO"); | |
92 curve = new SQCurveFacet(idx, SQ_B_CURVE, "TODO"); | |
93 | |
94 container.add(measurements); | |
95 container.add(outliers); | |
96 container.add(curve); | |
97 | |
98 measurements = new SQMeasurementFacet(idx, SQ_C_MEASUREMENT, "TODO"); | |
99 outliers = new SQOutlierFacet(idx, SQ_C_OUTLIER, "TODO"); | |
100 curve = new SQCurveFacet(idx, SQ_C_CURVE, "TODO"); | |
101 | |
102 container.add(measurements); | |
103 container.add(outliers); | |
104 container.add(curve); | |
105 | |
106 measurements = new SQMeasurementFacet(idx, SQ_D_MEASUREMENT, "TODO"); | |
107 outliers = new SQOutlierFacet(idx, SQ_D_OUTLIER, "TODO"); | |
108 curve = new SQCurveFacet(idx, SQ_D_CURVE, "TODO"); | |
109 | |
110 container.add(measurements); | |
111 container.add(outliers); | |
112 container.add(curve); | |
113 | |
114 measurements = new SQMeasurementFacet(idx, SQ_E_MEASUREMENT, "TODO"); | |
115 outliers = new SQOutlierFacet(idx, SQ_E_OUTLIER, "TODO"); | |
116 curve = new SQCurveFacet(idx, SQ_E_CURVE, "TODO"); | |
117 | |
118 container.add(measurements); | |
119 container.add(outliers); | |
120 container.add(curve); | |
121 | |
122 measurements = new SQMeasurementFacet(idx, SQ_F_MEASUREMENT, "TODO"); | |
123 outliers = new SQOutlierFacet(idx, SQ_F_OUTLIER, "TODO"); | |
124 curve = new SQCurveFacet(idx, SQ_F_CURVE, "TODO"); | |
125 | |
126 container.add(measurements); | |
127 container.add(outliers); | |
128 container.add(curve); | |
129 } | |
27 } | 130 } |
28 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : | 131 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf-8 : |