Mercurial > dive4elements > river
annotate flys-client/src/main/java/de/intevation/flys/client/server/RiverInfoServiceImpl.java @ 4378:8eb1d6dc96a9
Add chart generation for fixings in bed differences generators
If matching fixanalysis data is loaded via the datacage the bed difference
generators are now able to display graphs for the additonal data.
author | Björn Ricks <bjoern.ricks@intevation.de> |
---|---|
date | Fri, 02 Nov 2012 15:50:35 +0100 |
parents | 87362ba26c72 |
children | 45d310b41c23 |
rev | line source |
---|---|
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
1 package de.intevation.flys.client.server; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
2 |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
3 import java.text.DateFormat; |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
4 import java.text.ParseException; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
5 import java.util.ArrayList; |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
6 import java.util.Date; |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
7 import java.util.List; |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
8 import java.util.Locale; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
9 import javax.xml.xpath.XPathConstants; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
10 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
11 import org.apache.log4j.Logger; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
12 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
13 import org.w3c.dom.Document; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
14 import org.w3c.dom.Element; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
15 import org.w3c.dom.NodeList; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
16 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
17 import de.intevation.artifacts.common.ArtifactNamespaceContext; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
18 import de.intevation.artifacts.common.utils.XMLUtils; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
19 import de.intevation.artifacts.httpclient.exceptions.ConnectionException; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
20 import de.intevation.artifacts.httpclient.http.HttpClient; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
21 import de.intevation.artifacts.httpclient.http.HttpClientImpl; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
22 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
23 import de.intevation.flys.client.client.services.RiverInfoService; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
24 import de.intevation.flys.client.shared.exceptions.ServerException; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
25 import de.intevation.flys.client.shared.model.DefaultGaugeInfo; |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
26 import de.intevation.flys.client.shared.model.DefaultMeasurementStation; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
27 import de.intevation.flys.client.shared.model.DefaultRiverInfo; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
28 import de.intevation.flys.client.shared.model.GaugeInfo; |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
29 import de.intevation.flys.client.shared.model.MeasurementStation; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
30 import de.intevation.flys.client.shared.model.RiverInfo; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
31 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
32 |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
33 /** |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
34 * @author <a href="mailto:bjoern.ricks@intevation.de">Björn Ricks</a> |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
35 */ |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
36 public class RiverInfoServiceImpl |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
37 extends RemoteServiceServlet |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
38 implements RiverInfoService |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
39 { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
40 private static final Logger logger = |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
41 Logger.getLogger(RiverInfoServiceImpl.class); |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
42 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
43 public static final String ERROR_NO_RIVER_INFO_FOUND = |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
44 "error_no_riverinfo_found"; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
45 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
46 private static final String XPATH_RIVER = |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
47 "/art:river-info/art:river"; |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
48 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
49 private static final String XPATH_STATIONS = |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
50 "/art:river-info/art:measurement-stations/art:measurement-station"; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
51 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
52 private static final String XPATH_GAUGES = "/art:river-info/art:gauges/art:gauge"; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
53 |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
54 public static final DateFormat DATE_FORMAT = DateFormat.getDateInstance( |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
55 DateFormat.SHORT, Locale.GERMANY); |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
56 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
57 public RiverInfo getGauges(String river) throws ServerException { |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
58 logger.info("RiverInfoServiceImpl.getRiverInfo"); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
59 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
60 String url = getServletContext().getInitParameter("server-url"); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
61 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
62 Document doc = XMLUtils.newDocument(); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
63 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
64 XMLUtils.ElementCreator ec = new XMLUtils.ElementCreator( |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
65 doc, |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
66 ArtifactNamespaceContext.NAMESPACE_URI, |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
67 ArtifactNamespaceContext.NAMESPACE_PREFIX); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
68 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
69 Element riverele = ec.create("river"); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
70 riverele.setTextContent(river); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
71 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
72 doc.appendChild(riverele); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
73 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
74 HttpClient client = new HttpClientImpl(url); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
75 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
76 try { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
77 Document result = client.callService(url, "gaugeoverviewinfo", doc); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
78 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
79 DefaultRiverInfo riverinfo = getRiverInfo(result); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
80 List<GaugeInfo>gauges = createGauges(result, riverinfo.getName(), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
81 riverinfo.isKmUp(), riverinfo.getWstUnit()); |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
82 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
83 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
84 riverinfo.setGauges(gauges); |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
85 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
86 logger.debug("Finished RiverInfoService.getGauges."); |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
87 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
88 return riverinfo; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
89 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
90 catch (ConnectionException ce) { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
91 logger.error(ce, ce); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
92 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
93 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
94 logger.warn("No gauge found"); |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
95 throw new ServerException(ERROR_NO_RIVER_INFO_FOUND); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
96 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
97 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
98 public RiverInfo getMeasurementStations(String river) throws ServerException { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
99 logger.info("RiverInfoServiceImpl.getMeasurementStations"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
100 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
101 String url = getServletContext().getInitParameter("server-url"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
102 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
103 Document doc = XMLUtils.newDocument(); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
104 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
105 XMLUtils.ElementCreator ec = new XMLUtils.ElementCreator( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
106 doc, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
107 ArtifactNamespaceContext.NAMESPACE_URI, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
108 ArtifactNamespaceContext.NAMESPACE_PREFIX); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
109 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
110 Element riverele = ec.create("river"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
111 riverele.setTextContent(river); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
112 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
113 doc.appendChild(riverele); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
114 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
115 HttpClient client = new HttpClientImpl(url); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
116 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
117 try { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
118 Document result = client.callService(url, "measurementstationinfo", doc); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
119 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
120 DefaultRiverInfo riverinfo = getRiverInfo(result); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
121 List<MeasurementStation> mstations = createMeasurementStations( |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
122 result, riverinfo.getName(), riverinfo.isKmUp()); |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
123 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
124 riverinfo.setMeasurementStations(mstations); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
125 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
126 logger.debug("Finished MeasurementStationInfoService."); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
127 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
128 return riverinfo; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
129 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
130 catch (ConnectionException ce) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
131 logger.error(ce, ce); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
132 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
133 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
134 logger.warn("No measurement station found"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
135 throw new ServerException(ERROR_NO_RIVER_INFO_FOUND); |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
136 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
137 |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
138 /** |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
139 * Avoids NullPointerException when parsing double value |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
140 */ |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
141 private Double parseDouble(String value) { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
142 if (value == null || value.isEmpty()) { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
143 return null; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
144 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
145 try { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
146 return Double.valueOf(value); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
147 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
148 catch(NumberFormatException e) { |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
149 logger.error(e, e); |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
150 return null; |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
151 } |
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
152 } |
3843
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
153 |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
154 private Long parseLong(String value) { |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
155 if (value == null || value.isEmpty()) { |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
156 return null; |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
157 } |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
158 try { |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
159 return Long.valueOf(value); |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
160 } |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
161 catch(NumberFormatException e) { |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
162 logger.error(e, e); |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
163 return null; |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
164 } |
8e169e4e1b57
Add the official gauge number to the GaugeInfo class
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
3838
diff
changeset
|
165 } |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
166 |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
167 private Integer parseInteger(String value) { |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
168 if (value == null || value.isEmpty()) { |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
169 return null; |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
170 } |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
171 try { |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
172 return Integer.valueOf(value); |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
173 } |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
174 catch(NumberFormatException e) { |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
175 logger.error(e, e); |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
176 return null; |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
177 } |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
178 } |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
179 |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
180 private Date parseDate(String value) { |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
181 if (value == null || value.isEmpty()) { |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
182 return null; |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
183 } |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
184 try { |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
185 return DATE_FORMAT.parse(value); |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
186 } |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
187 catch(ParseException e) { |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
188 logger.error(e, e); |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
189 return null; |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
190 } |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
191 } |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
192 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
193 private List<MeasurementStation> createMeasurementStations( |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
194 Document result, String rivername, boolean kmup) { |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
195 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
196 NodeList stationnodes = (NodeList) XMLUtils.xpath( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
197 result, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
198 XPATH_STATIONS, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
199 XPathConstants.NODESET, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
200 ArtifactNamespaceContext.INSTANCE); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
201 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
202 int num = stationnodes == null ? 0 : stationnodes.getLength(); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
203 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
204 ArrayList<MeasurementStation> mstations = new ArrayList<MeasurementStation>(num); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
205 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
206 if (num == 0) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
207 logger.warn("No measurement station found."); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
208 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
209 else { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
210 logger.debug("Found " + num + " measurement stations."); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
211 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
212 for (int i = 0; i < num; i++) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
213 Element stationele = (Element)stationnodes.item(i); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
214 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
215 String mname = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
216 ArtifactNamespaceContext.NAMESPACE_URI, "name"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
217 String mstart = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
218 ArtifactNamespaceContext.NAMESPACE_URI, "start"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
219 String mend = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
220 ArtifactNamespaceContext.NAMESPACE_URI, "end"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
221 String mstation = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
222 ArtifactNamespaceContext.NAMESPACE_URI, "station"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
223 String mtype = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
224 ArtifactNamespaceContext.NAMESPACE_URI, "type"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
225 String riverside = stationele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
226 ArtifactNamespaceContext.NAMESPACE_URI, "riverside"); |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
227 String mid = stationele.getAttributeNS( |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
228 ArtifactNamespaceContext.NAMESPACE_URI, "id"); |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
229 String moperator = stationele.getAttributeNS( |
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
230 ArtifactNamespaceContext.NAMESPACE_URI, "operator"); |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
231 String mstarttime = stationele.getAttributeNS( |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
232 ArtifactNamespaceContext.NAMESPACE_URI, "starttime"); |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
233 String mstoptime = stationele.getAttributeNS( |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
234 ArtifactNamespaceContext.NAMESPACE_URI, "stoptime"); |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
235 |
4326
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
236 String gaugename = null; |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
237 |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
238 Element gaugeele = (Element)stationele.getFirstChild(); |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
239 if (gaugeele != null) { |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
240 gaugename = gaugeele.getAttributeNS( |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
241 ArtifactNamespaceContext.NAMESPACE_URI, "name"); |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
242 } |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
243 |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
244 |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
245 logger.debug("Found measurement station with name " + mname); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
246 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
247 MeasurementStation station = new DefaultMeasurementStation( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
248 rivername, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
249 mname, |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
250 parseInteger(mid), |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
251 parseDouble(mstation), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
252 parseDouble(mstart), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
253 parseDouble(mend), |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
254 kmup, |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
255 riverside, |
4266
06d9098a609a
Add id, kmup and operator to MeasurementStation in RiverInfoServiceImpl
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4250
diff
changeset
|
256 mtype, |
4288
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
257 moperator, |
b6f2ecaa6704
Parse start and end time of an observation
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4266
diff
changeset
|
258 parseDate(mstarttime), |
4326
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
259 parseDate(mstoptime), |
87362ba26c72
Extract the gauge name from the riverservice response
Björn Ricks <bjoern.ricks@intevation.de>
parents:
4288
diff
changeset
|
260 gaugename |
4250
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
261 ); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
262 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
263 mstations.add(station); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
264 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
265 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
266 return mstations; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
267 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
268 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
269 private List<GaugeInfo> createGauges( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
270 Document result, String rivername, Boolean kmup, String rwstunit) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
271 NodeList gaugenodes = (NodeList) XMLUtils.xpath( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
272 result, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
273 XPATH_GAUGES, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
274 XPathConstants.NODESET, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
275 ArtifactNamespaceContext.INSTANCE); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
276 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
277 int num = gaugenodes == null ? 0 : gaugenodes.getLength(); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
278 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
279 ArrayList<GaugeInfo> gauges = new ArrayList<GaugeInfo>(num); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
280 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
281 if (num == 0) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
282 logger.warn("No gauge info found."); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
283 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
284 else { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
285 logger.debug("Found " + num + " gauges."); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
286 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
287 for (int i = 0; i < num; i++) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
288 Element gaugeele = (Element)gaugenodes.item(i); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
289 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
290 String gname = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
291 ArtifactNamespaceContext.NAMESPACE_URI, "name"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
292 String gstart = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
293 ArtifactNamespaceContext.NAMESPACE_URI, "start"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
294 String gend = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
295 ArtifactNamespaceContext.NAMESPACE_URI, "end"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
296 String gdatum = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
297 ArtifactNamespaceContext.NAMESPACE_URI, "datum"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
298 String gaeo = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
299 ArtifactNamespaceContext.NAMESPACE_URI, "aeo"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
300 String gminq = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
301 ArtifactNamespaceContext.NAMESPACE_URI, "minq"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
302 String gminw = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
303 ArtifactNamespaceContext.NAMESPACE_URI, "minw"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
304 String gmaxq = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
305 ArtifactNamespaceContext.NAMESPACE_URI, "maxq"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
306 String gmaxw = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
307 ArtifactNamespaceContext.NAMESPACE_URI, "maxw"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
308 String gstation = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
309 ArtifactNamespaceContext.NAMESPACE_URI, "station"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
310 String gofficial = gaugeele.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
311 ArtifactNamespaceContext.NAMESPACE_URI, "official"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
312 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
313 logger.debug("Found gauge with name " + gname); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
314 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
315 GaugeInfo gaugeinfo = new DefaultGaugeInfo( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
316 rivername, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
317 gname, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
318 kmup, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
319 parseDouble(gstation), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
320 parseDouble(gstart), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
321 parseDouble(gend), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
322 parseDouble(gdatum), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
323 parseDouble(gaeo), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
324 parseDouble(gminq), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
325 parseDouble(gmaxq), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
326 parseDouble(gminw), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
327 parseDouble(gmaxw), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
328 rwstunit, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
329 parseLong(gofficial) |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
330 ); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
331 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
332 gauges.add(gaugeinfo); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
333 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
334 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
335 return gauges; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
336 } |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
337 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
338 private DefaultRiverInfo getRiverInfo(Document result) { |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
339 Element riverresp = (Element) XMLUtils.xpath( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
340 result, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
341 XPATH_RIVER, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
342 XPathConstants.NODE, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
343 ArtifactNamespaceContext.INSTANCE); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
344 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
345 String rname = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
346 ArtifactNamespaceContext.NAMESPACE_URI, "name"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
347 String rkmup = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
348 ArtifactNamespaceContext.NAMESPACE_URI, "kmup"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
349 String rstart = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
350 ArtifactNamespaceContext.NAMESPACE_URI, "start"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
351 String rend = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
352 ArtifactNamespaceContext.NAMESPACE_URI, "end"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
353 String rwstunit = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
354 ArtifactNamespaceContext.NAMESPACE_URI, "wstunit"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
355 String rminq = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
356 ArtifactNamespaceContext.NAMESPACE_URI, "minq"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
357 String rmaxq = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
358 ArtifactNamespaceContext.NAMESPACE_URI, "maxq"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
359 String rofficial = riverresp.getAttributeNS( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
360 ArtifactNamespaceContext.NAMESPACE_URI, "official"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
361 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
362 logger.debug("River is " + rname); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
363 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
364 boolean kmup = rkmup.equalsIgnoreCase("true"); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
365 DefaultRiverInfo riverinfo = new DefaultRiverInfo( |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
366 rname, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
367 kmup, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
368 parseDouble(rstart), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
369 parseDouble(rend), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
370 rwstunit, |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
371 parseDouble(rminq), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
372 parseDouble(rmaxq), |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
373 parseLong(rofficial) |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
374 ); |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
375 |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
376 return riverinfo; |
ef154fbf58f1
Add method to get the MeasurementStations from the RiverInfoService
Björn Ricks <bjoern.ricks@intevation.de>
parents:
3974
diff
changeset
|
377 } |
3713
79ad33f41977
Implement a gauge service
Bjoern Ricks <bjoern.ricks@intevation.de>
parents:
diff
changeset
|
378 } |