comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/SQRelation.java @ 3116:2feed9b50047

SQ relation now creates Facets with proper i18n labels. flys-artifacts/trunk@4716 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Wed, 20 Jun 2012 08:13:01 +0000
parents b31397addf2f
children 238803b2cb8b
comparison
equal deleted inserted replaced
3115:5482a8a48a3f 3116:2feed9b50047
4 import java.util.List; 4 import java.util.List;
5 5
6 import org.apache.log4j.Logger; 6 import org.apache.log4j.Logger;
7 7
8 import de.intevation.artifacts.CallContext; 8 import de.intevation.artifacts.CallContext;
9 import de.intevation.artifacts.CallMeta;
9 10
10 import de.intevation.artifactdatabase.state.Facet; 11 import de.intevation.artifactdatabase.state.Facet;
11 12
12 import de.intevation.flys.artifacts.FLYSArtifact; 13 import de.intevation.flys.artifacts.FLYSArtifact;
13 import de.intevation.flys.artifacts.MINFOArtifact; 14 import de.intevation.flys.artifacts.MINFOArtifact;
18 import de.intevation.flys.artifacts.model.sq.SQFractionResult; 19 import de.intevation.flys.artifacts.model.sq.SQFractionResult;
19 import de.intevation.flys.artifacts.model.sq.SQMeasurementFacet; 20 import de.intevation.flys.artifacts.model.sq.SQMeasurementFacet;
20 import de.intevation.flys.artifacts.model.sq.SQOutlierFacet; 21 import de.intevation.flys.artifacts.model.sq.SQOutlierFacet;
21 import de.intevation.flys.artifacts.model.sq.SQRelationCalculation; 22 import de.intevation.flys.artifacts.model.sq.SQRelationCalculation;
22 import de.intevation.flys.artifacts.model.sq.SQResult; 23 import de.intevation.flys.artifacts.model.sq.SQResult;
24 import de.intevation.flys.artifacts.resources.Resources;
23 import de.intevation.flys.artifacts.states.DefaultState; 25 import de.intevation.flys.artifacts.states.DefaultState;
24 26
25 /** 27 /**
26 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> 28 * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a>
27 */ 29 */
28 public class SQRelation extends DefaultState implements FacetTypes { 30 public class SQRelation extends DefaultState implements FacetTypes {
29 31
30 private static Logger logger = Logger.getLogger(SQRelation.class); 32 private static Logger logger = Logger.getLogger(SQRelation.class);
33
34
35 public static final String I18N_FACET_CURVE =
36 "facet.sq_relation.curve";
37
38 public static final String I18N_FACET_MEASUREMENTS =
39 "facet.sq_relation.measurements";
40
41 public static final String I18N_FACET_OUTLIERS =
42 "facet.sq_relation.outliers";
31 43
32 44
33 public SQRelation() { 45 public SQRelation() {
34 } 46 }
35 47
55 } 67 }
56 68
57 SQResult[] sqr = (SQResult[]) res.getData(); 69 SQResult[] sqr = (SQResult[]) res.getData();
58 logger.info("Calculation computed " + sqr.length + " SQResult objects"); 70 logger.info("Calculation computed " + sqr.length + " SQResult objects");
59 71
60 createFacets(newFacets, sqr, hash); 72 createFacets(context, newFacets, sqr, hash);
61 73
62 Facet csv = new DataFacet( 74 Facet csv = new DataFacet(
63 CSV, "CSV data", ComputeType.ADVANCE, hash, id); 75 CSV, "CSV data", ComputeType.ADVANCE, hash, id);
64 76
65 Facet pdf = new DataFacet( 77 Facet pdf = new DataFacet(
75 return res; 87 return res;
76 } 88 }
77 89
78 90
79 protected void createFacets( 91 protected void createFacets(
92 CallContext context,
80 List<Facet> container, 93 List<Facet> container,
81 SQResult[] sqr, 94 SQResult[] sqr,
82 String hash 95 String hash
83 ) { 96 ) {
84 String stateId = getID(); 97 CallMeta meta = context.getMeta();
98 String stateId = getID();
85 99
86 for (int res = 0, n = sqr.length; res < n; res++) { 100 for (int res = 0, n = sqr.length; res < n; res++) {
87 101
88 for (int i = 0; i < 6; i++) { 102 for (int i = 0; i < 6; i++) {
89 SQFractionResult result = sqr[res].getFraction(i); 103 SQFractionResult result = sqr[res].getFraction(i);
95 109
96 container.add(new SQMeasurementFacet( 110 container.add(new SQMeasurementFacet(
97 res, 111 res,
98 i, 112 i,
99 getFractionFacetname(1, i), 113 getFractionFacetname(1, i),
100 "Measurement (Fraction " + i + ")", 114 Resources.getMsg(
115 meta,
116 I18N_FACET_MEASUREMENTS,
117 I18N_FACET_MEASUREMENTS
118 ),
101 hash, 119 hash,
102 stateId 120 stateId
103 )); 121 ));
104 122
105 container.add(new SQCurveFacet( 123 container.add(new SQCurveFacet(
106 res, 124 res,
107 i, 125 i,
108 getFractionFacetname(0, i), 126 getFractionFacetname(0, i),
109 "CURVE AT " + i, 127 Resources.getMsg(
128 meta,
129 I18N_FACET_CURVE,
130 I18N_FACET_CURVE
131 ),
110 hash, 132 hash,
111 stateId 133 stateId
112 )); 134 ));
113 135
114 for (int j = 0, C = result.getOutliersCount(); j < C; j++) { 136 for (int j = 0, C = result.getOutliersCount(); j < C; j++) {
115 container.add(new SQOutlierFacet( 137 container.add(new SQOutlierFacet(
116 res, 138 res,
117 i, 139 i,
118 j, 140 j,
119 getFractionFacetname(2, i), 141 getFractionFacetname(2, i),
120 "OUTLIER AT " + i, 142 Resources.getMsg(
143 meta,
144 I18N_FACET_OUTLIERS,
145 I18N_FACET_OUTLIERS,
146 new Object[] { j }
147 ),
121 hash, 148 hash,
122 stateId 149 stateId
123 )); 150 ));
124 } 151 }
125 } 152 }

http://dive4elements.wald.intevation.org