Mercurial > dive4elements > gnv-client
comparison gnv-artifacts/src/main/java/de/intevation/gnv/transition/timeseries/TimeSeriesOutputTransition.java @ 82:5eb62df21f9a
Added Support for Vertical Profiles Marnet, STAUN, IMIS
gnv-artifacts/trunk@111 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Tue, 22 Sep 2009 13:20:30 +0000 |
parents | 9b41f3688610 |
children | 5d4f5d26bb7a |
comparison
equal
deleted
inserted
replaced
81:9b41f3688610 | 82:5eb62df21f9a |
---|---|
53 */ | 53 */ |
54 public void out(String outputMode, OutputStream outputStream) throws TransitionException { | 54 public void out(String outputMode, OutputStream outputStream) throws TransitionException { |
55 log.debug("TimeSeriesOutputTransition"); | 55 log.debug("TimeSeriesOutputTransition"); |
56 try { | 56 try { |
57 this.advance(); // TODO nur neu holen wenn hash auf chartResult sich ge�ndert hat | 57 this.advance(); // TODO nur neu holen wenn hash auf chartResult sich ge�ndert hat |
58 ChartFactory chartFactory = new ChartFactory(); | 58 |
59 | 59 |
60 Collection<KeyValueDescibeData> parameters = this.getParameters(); | 60 Collection<KeyValueDescibeData> parameters = this.getParameters(); |
61 Collection<KeyValueDescibeData> measurements = this.getMeasurements(); | 61 Collection<KeyValueDescibeData> measurements = this.getMeasurements(); |
62 String timeSeriesName = "BLA"; | 62 String timeSeriesName = "BLA"; |
63 ChartStyle chartStyle = this.creatStyle(600,400); | 63 ChartStyle chartStyle = this.creatStyle(600,400); |
64 StringBuffer lDiagramTitle = new StringBuffer(); | 64 StringBuffer lDiagramTitle = new StringBuffer(); |
65 lDiagramTitle.append(/*mSelectedFis.getTitle()*/ "FIS-TITLE").append(" - ").append(/*mSelectedFeatureId[0].getTitle()*/"FeatureTitle"); // TODO: FIXME | 65 lDiagramTitle.append(/*mSelectedFis.getTitle()*/ "FIS-TITLE").append(" - ").append(/*mSelectedFeatureId[0].getTitle()*/"FeatureTitle"); // TODO: FIXME |
66 String domainLable = "BLA"; // TODO woher bekommen wir das | 66 String domainLable = "BLA"; // TODO woher bekommen wir das |
67 ChartLabels chartLables = new ChartLabels(lDiagramTitle.toString(),domainLable , /*mSelectedParams[0].getTitle()*/ "Selected Params Title"); | 67 ChartLabels chartLables = new ChartLabels(lDiagramTitle.toString(),domainLable , /*mSelectedParams[0].getTitle()*/ "Selected Params Title"); |
68 chartFactory.createSimpleTimeSeriesChart(chartLables, chartStyle, timeSeriesName, | 68 createChart(outputStream, parameters, measurements, timeSeriesName, |
69 parameters, measurements, | 69 chartStyle, chartLables); |
70 outputStream, this.chartResult); | |
71 } catch (IOException e) { | 70 } catch (IOException e) { |
72 log.error(e,e); | 71 log.error(e,e); |
73 throw new TransitionException(e); | 72 throw new TransitionException(e); |
74 } catch (TechnicalChartException e) { | 73 } catch (TechnicalChartException e) { |
75 log.error(e,e); | 74 log.error(e,e); |
76 throw new TransitionException(e); | 75 throw new TransitionException(e); |
77 } | 76 } |
78 } | 77 } |
78 | |
79 /** | |
80 * @param outputStream | |
81 * @param parameters | |
82 * @param measurements | |
83 * @param timeSeriesName | |
84 * @param chartStyle | |
85 * @param chartLables | |
86 * @throws IOException | |
87 * @throws TechnicalChartException | |
88 */ | |
89 protected void createChart(OutputStream outputStream, | |
90 Collection<KeyValueDescibeData> parameters, | |
91 Collection<KeyValueDescibeData> measurements, String timeSeriesName, | |
92 ChartStyle chartStyle, ChartLabels chartLables) throws IOException, | |
93 TechnicalChartException { | |
94 ChartFactory chartFactory = new ChartFactory(); | |
95 chartFactory.createSimpleTimeSeriesChart(chartLables, chartStyle, timeSeriesName, | |
96 parameters, measurements, | |
97 outputStream, this.chartResult); | |
98 } | |
79 | 99 |
80 /** | 100 /** |
81 * @see de.intevation.gnv.transition.TransitionBase#purifyResult(java.util.Collection) | 101 * @see de.intevation.gnv.transition.TransitionBase#purifyResult(java.util.Collection) |
82 */ | 102 */ |
83 @Override | 103 @Override |
91 Dimension lChartSize = new Dimension(witdh, height); | 111 Dimension lChartSize = new Dimension(witdh, height); |
92 return new ChartStyle(Color.white, new Color(230, 230, 230), Color.white, Color.white, true, true, lInsets, lChartSize); | 112 return new ChartStyle(Color.white, new Color(230, 230, 230), Color.white, Color.white, true, true, lInsets, lChartSize); |
93 } | 113 } |
94 | 114 |
95 protected Collection<KeyValueDescibeData> getParameters(){ | 115 protected Collection<KeyValueDescibeData> getParameters(){ |
96 Iterator<Object> it = this.descibeData.iterator(); | 116 String collectionName = "parameterid"; |
97 | 117 return this.getCollection(collectionName); |
98 while (it.hasNext()){ | |
99 | |
100 Object o = it.next(); | |
101 if (o instanceof NamedCollection<?>){ | |
102 NamedCollection<KeyValueDescibeData> nc = (NamedCollection<KeyValueDescibeData>)o; | |
103 if (nc.getName().equals("parameterid")){ // TODO: konfigurierbar machen. | |
104 return nc; | |
105 } | |
106 } | |
107 } | |
108 return null; | |
109 } | 118 } |
110 | 119 |
111 protected Collection<KeyValueDescibeData> getMeasurements(){ | 120 protected Collection<KeyValueDescibeData> getMeasurements(){ |
121 String collectionName = "measurementid"; | |
122 return this.getCollection(collectionName); | |
123 } | |
124 | |
125 /** | |
126 * @param collectionName | |
127 * @return | |
128 */ | |
129 protected Collection<KeyValueDescibeData> getCollection( | |
130 String collectionName) { | |
112 Iterator<Object> it = this.descibeData.iterator(); | 131 Iterator<Object> it = this.descibeData.iterator(); |
113 while (it.hasNext()){ | 132 while (it.hasNext()){ |
114 | 133 |
115 Object o = it.next(); | 134 Object o = it.next(); |
135 | |
116 if (o instanceof NamedCollection<?>){ | 136 if (o instanceof NamedCollection<?>){ |
117 NamedCollection<KeyValueDescibeData> nc = (NamedCollection<KeyValueDescibeData>)o; | 137 NamedCollection<KeyValueDescibeData> nc = (NamedCollection<KeyValueDescibeData>)o; |
118 if (nc.getName().equals("measurementid")){ // TODO: konfigurierbar machen. | 138 if (nc.getName().equals(collectionName)){ // TODO: konfigurierbar machen. |
119 return nc; | 139 return nc; |
120 } | 140 } |
121 } | 141 } |
122 } | 142 } |
123 return null; | 143 return null; |