Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/services/DischargeInfoService.java @ 4183:1755a1bfe5ce
Merged
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Fri, 19 Oct 2012 09:20:52 +0200 |
parents | 0cc2c3d89a9d |
children | 810db532803a |
comparison
equal
deleted
inserted
replaced
4182:ad2489b595d7 | 4183:1755a1bfe5ce |
---|---|
1 package de.intevation.flys.artifacts.services; | 1 package de.intevation.flys.artifacts.services; |
2 | 2 |
3 import java.util.Collections; | |
3 import java.util.List; | 4 import java.util.List; |
4 import java.util.Date; | 5 import java.util.Date; |
5 import java.util.Calendar; | 6 import java.util.Calendar; |
6 import java.util.GregorianCalendar; | 7 import java.util.GregorianCalendar; |
7 | 8 |
14 import de.intevation.artifacts.GlobalContext; | 15 import de.intevation.artifacts.GlobalContext; |
15 | 16 |
16 import de.intevation.artifacts.common.ArtifactNamespaceContext; | 17 import de.intevation.artifacts.common.ArtifactNamespaceContext; |
17 import de.intevation.artifacts.common.utils.XMLUtils; | 18 import de.intevation.artifacts.common.utils.XMLUtils; |
18 | 19 |
20 import de.intevation.flys.artifacts.model.DischargeTables; | |
19 import de.intevation.flys.model.Gauge; | 21 import de.intevation.flys.model.Gauge; |
20 import de.intevation.flys.model.DischargeTable; | 22 import de.intevation.flys.model.DischargeTable; |
21 import de.intevation.flys.model.TimeInterval; | 23 import de.intevation.flys.model.TimeInterval; |
22 | 24 |
23 /** | 25 /** |
75 | 77 |
76 protected Document buildDocument(Gauge gauge) { | 78 protected Document buildDocument(Gauge gauge) { |
77 Document result = XMLUtils.newDocument(); | 79 Document result = XMLUtils.newDocument(); |
78 | 80 |
79 List<DischargeTable> tables =gauge.getDischargeTables(); | 81 List<DischargeTable> tables =gauge.getDischargeTables(); |
82 Collections.sort(tables); | |
80 | 83 |
81 Element all = result.createElement("discharges"); | 84 Element all = result.createElement("discharges"); |
82 for (DischargeTable dt: tables) { | 85 for (DischargeTable dt: tables) { |
83 if (dt.getKind() == Gauge.MASTER_DISCHARGE_TABLE) { | |
84 continue; | |
85 } | |
86 | |
87 Element discharge = result.createElement("discharge"); | 86 Element discharge = result.createElement("discharge"); |
88 discharge.setAttribute("description", dt.getDescription()); | 87 discharge.setAttribute("description", dt.getDescription()); |
89 | 88 |
90 // Get time interval. | 89 // Get time interval. |
91 TimeInterval ti = dt.getTimeInterval(); | 90 TimeInterval ti = dt.getTimeInterval(); |
100 | 99 |
101 if (startTime != null) { | 100 if (startTime != null) { |
102 discharge.setAttribute("start", String.valueOf(startTime.getTime())); | 101 discharge.setAttribute("start", String.valueOf(startTime.getTime())); |
103 } | 102 } |
104 else { | 103 else { |
105 discharge.setAttribute("start", "-1"); | 104 continue; |
106 } | 105 } |
107 | 106 |
108 if (stopTime != null) { | 107 if (stopTime != null && dt.getKind() != DischargeTables.MASTER) { |
109 discharge.setAttribute("end", String.valueOf(stopTime.getTime())); | 108 discharge.setAttribute("end", String.valueOf(stopTime.getTime())); |
110 } | 109 } |
110 else if (dt.getKind() == DischargeTables.MASTER) { | |
111 long now = System.currentTimeMillis(); | |
112 discharge.setAttribute("end", String.valueOf(now)); | |
113 } | |
111 else { | 114 else { |
112 discharge.setAttribute("end", "-1"); | 115 continue; |
113 } | 116 } |
114 | 117 |
115 all.appendChild(discharge); | 118 all.appendChild(discharge); |
116 } | 119 } |
117 result.appendChild(all); | 120 result.appendChild(all); |