Mercurial > dive4elements > river
annotate flys-artifacts/src/main/java/de/intevation/flys/exports/fixings/FixChartGenerator.java @ 3645:d92079b7c591
Revert acidentally committed experiment.
flys-artifacts/trunk@5365 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Felix Wolfsteller <felix.wolfsteller@intevation.de> |
---|---|
date | Thu, 06 Sep 2012 11:11:56 +0000 |
parents | 3732e1bab0aa |
children | cbe2febe30cc |
rev | line source |
---|---|
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.exports.fixings; |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
2 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
3 import de.intevation.artifacts.ArtifactNamespaceContext; |
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
4 import de.intevation.artifacts.CallContext; |
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
5 import de.intevation.artifacts.common.utils.XMLUtils; |
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
6 import de.intevation.flys.exports.XYChartGenerator; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
7 |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
8 import java.io.OutputStream; |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
9 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
10 import org.apache.log4j.Logger; |
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
11 import org.w3c.dom.Document; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
12 |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
13 public abstract class FixChartGenerator |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
14 extends XYChartGenerator |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
15 { |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
16 private static Logger logger = Logger.getLogger(FixChartGenerator.class); |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
17 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
18 public static final double INVALID_KM = Double.valueOf(-1d); |
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
19 public static final String CURRENT_KM = "currentKm"; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
20 public static final String XPATH_CHART_CURRENTKM = |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
21 "/art:action/art:attributes/art:currentKm/@art:km"; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
22 |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
23 @Override |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
24 public void init(Document request, OutputStream out, CallContext context) { |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
25 super.init(request, out, context); |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
26 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
27 double currentKm = getCurrentKmFromRequest(request); |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
28 |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
29 if (logger.isDebugEnabled()) { |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
30 logger.debug("currentKm = " + currentKm); |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
31 } |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
32 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
33 context.putContextValue(CURRENT_KM, currentKm); |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
34 } |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
35 |
3406
3732e1bab0aa
Add kilometer to chart titles
Christian Lins <christian.lins@intevation.de>
parents:
3221
diff
changeset
|
36 public static double getCurrentKmFromRequest(Document request) { |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
37 |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
38 String km = XMLUtils.xpathString( |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
39 request, |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
40 XPATH_CHART_CURRENTKM, |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
41 ArtifactNamespaceContext.INSTANCE); |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
42 |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
43 if (km == null) { |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
44 return INVALID_KM; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
45 } |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
46 |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
47 try { |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
48 return Double.valueOf(km); |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
49 } |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
50 catch (NumberFormatException nfe) { |
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
51 return INVALID_KM; |
3088
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
52 } |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
53 } |
960307cf2adc
Moved current km to context and added an abstract generator for fix analysis
Raimund Renkert <raimund.renkert@intevation.de>
parents:
diff
changeset
|
54 } |
3221
06ae0258269b
More braindead code removal.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
3088
diff
changeset
|
55 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |