comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/states/ManualPointsSingleState.java @ 3883:f858028dde5f

Manual points (work in progress) flys-artifacts/trunk@5533 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Christian Lins <christian.lins@intevation.de>
date Thu, 20 Sep 2012 07:16:45 +0000
parents e74e707ff650
children 1ff257ab38ca
comparison
equal deleted inserted replaced
3882:8e806d51ebe4 3883:f858028dde5f
1 package de.intevation.flys.artifacts.states; 1 package de.intevation.flys.artifacts.states;
2 2
3 import java.util.List; 3 import java.util.List;
4 4
5 import org.apache.log4j.Logger; 5 import org.apache.log4j.Logger;
6
7 import org.json.JSONArray; 6 import org.json.JSONArray;
8 import org.json.JSONException; 7 import org.json.JSONException;
9 8
9 import de.intevation.artifactdatabase.state.Facet;
10 import de.intevation.artifacts.CallContext;
10 import de.intevation.artifacts.CallMeta; 11 import de.intevation.artifacts.CallMeta;
11 import de.intevation.artifacts.CallContext;
12
13 import de.intevation.artifactdatabase.state.Facet;
14
15 import de.intevation.flys.artifacts.FLYSArtifact; 12 import de.intevation.flys.artifacts.FLYSArtifact;
16 import de.intevation.flys.artifacts.ManualPointsArtifact; 13 import de.intevation.flys.artifacts.ManualPointsArtifact;
17
18 import de.intevation.flys.artifacts.model.CrossSectionWaterLineFacet; 14 import de.intevation.flys.artifacts.model.CrossSectionWaterLineFacet;
19 import de.intevation.flys.artifacts.model.FacetTypes; 15 import de.intevation.flys.artifacts.model.FacetTypes;
20 import de.intevation.flys.artifacts.model.ManualPointsFacet; 16 import de.intevation.flys.artifacts.model.ManualPointsFacet;
21
22 import de.intevation.flys.artifacts.resources.Resources; 17 import de.intevation.flys.artifacts.resources.Resources;
23 18
24 /** 19 /**
25 * The only state for an ManualPointArtifact. 20 * The only state for an ManualPointArtifact.
26 */ 21 */
64 logger.debug("ManualPointsSingleState.compute()"); 59 logger.debug("ManualPointsSingleState.compute()");
65 ManualPointsArtifact points = (ManualPointsArtifact) artifact; 60 ManualPointsArtifact points = (ManualPointsArtifact) artifact;
66 61
67 // Add Facet per Diagram type if data given. 62 // Add Facet per Diagram type if data given.
68 for (ChartType ct: ChartType.values()) { 63 for (ChartType ct: ChartType.values()) {
64 logger.debug("compute(): points for " + ct);
69 // Handle points. 65 // Handle points.
70 String pointData = points.getDataAsString(ct + "." + MANUALPOINTS + 66 String pointData = points.getDataAsString(ct + "." + MANUALPOINTS +
71 DOT_DATA); 67 DOT_DATA);
72 if (pointData != null && pointData.length() != 0 68 if (pointData != null && pointData.length() != 0
73 && !pointData.equals("[]")) { 69 && !pointData.equals("[]")) {
74 String fName = ct + "." + MANUALPOINTS; 70 String fName = ct + "." + MANUALPOINTS;
75 ManualPointsFacet facet = new ManualPointsFacet( 71 ManualPointsFacet facet = new ManualPointsFacet(
76 0, 72 0,
77 fName, 73 fName,
78 Resources.getMsg(meta, "manualpoints", "Manual Points")); 74 Resources.getMsg(meta, "manualpoints", "Manual Points"));
79
80 facets.add(facet); 75 facets.add(facet);
81 } 76 }
82 else { 77 else {
83 //logger.debug("No points for " + ct); 78 logger.debug("compute(): No points for " + ct);
84 } 79 }
85 80
86 // Handle lines. 81 // Handle lines.
87 String linesData = points.getDataAsString(ct + "." + MANUALPOINTS + 82 String linesData = points.getDataAsString(ct + "." + MANUALPOINTS +
88 DOT_LINES); 83 DOT_LINES);
89 if (linesData != null && linesData.length() != 0 84 if (linesData != null && linesData.length() != 0
90 && !linesData.equals("[]")) { 85 && !linesData.equals("[]")) {
91 try { 86 try {
92 JSONArray lines = new JSONArray((String) linesData); 87 JSONArray lines = new JSONArray(linesData);
93 for (int i = 0, P = lines.length(); i < P; i++) { 88 for (int i = 0, P = lines.length(); i < P; i++) {
94 JSONArray array = lines.getJSONArray(i); 89 JSONArray array = lines.getJSONArray(i);
95 double y = array.getDouble(0); 90 double y = array.getDouble(0);
96 String name = array.getString(1); 91 String name = array.getString(1);
97 String fName = ct + "." + MANUALLINE; 92 String fName = ct + "." + MANUALLINE;

http://dive4elements.wald.intevation.org