Mercurial > dive4elements > river
comparison artifacts/src/main/java/org/dive4elements/river/artifacts/states/DischargeState.java @ 6185:7573683925a3
Add sorting for discharge value
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Tue, 04 Jun 2013 16:45:23 +0200 |
parents | af13ceeba52a |
children | a07521dca5b5 |
comparison
equal
deleted
inserted
replaced
6184:58e78e6662fa | 6185:7573683925a3 |
---|---|
7 */ | 7 */ |
8 | 8 |
9 package org.dive4elements.river.artifacts.states; | 9 package org.dive4elements.river.artifacts.states; |
10 | 10 |
11 import java.util.List; | 11 import java.util.List; |
12 import java.util.Collections; | |
13 import java.util.Comparator; | |
12 | 14 |
13 import org.apache.log4j.Logger; | 15 import org.apache.log4j.Logger; |
14 | 16 |
15 import org.dive4elements.artifacts.Artifact; | 17 import org.dive4elements.artifacts.Artifact; |
16 import org.dive4elements.artifacts.CallContext; | 18 import org.dive4elements.artifacts.CallContext; |
66 | 68 |
67 List<DischargeZone> zones = getDischargeZones(artifact); | 69 List<DischargeZone> zones = getDischargeZones(artifact); |
68 | 70 |
69 KVP[] kvp = new KVP[zones.size()]; | 71 KVP[] kvp = new KVP[zones.size()]; |
70 | 72 |
71 for (int i = 0, Z = zones.size(); i < Z; i++) { | 73 Collections.sort(zones, new Comparator<DischargeZone>() { |
72 DischargeZone zone = zones.get(i); | 74 public int compare(DischargeZone a, DischargeZone b) { |
75 return a.getValue().compareTo(b.getValue()); | |
76 } | |
77 }); | |
73 | 78 |
79 int i = 0; | |
80 | |
81 for (DischargeZone zone: zones) { | |
74 String lower = zone.getLowerDischarge(); | 82 String lower = zone.getLowerDischarge(); |
75 String upper = zone.getUpperDischarge(); | 83 String upper = zone.getUpperDischarge(); |
76 | 84 |
77 if (lower.equals(upper)) { | 85 if (lower.equals(upper)) { |
78 kvp[i] = new KVP(zone.getId(), lower); | 86 kvp[i] = new KVP(zone.getId(), lower); |
79 } | 87 } |
80 else { | 88 else { |
81 kvp[i] = new KVP(zone.getId(), lower + " - " + upper); | 89 kvp[i] = new KVP(zone.getId(), lower + " - " + upper); |
82 } | 90 } |
91 i++; | |
83 } | 92 } |
84 | 93 |
85 return kvp; | 94 return kvp; |
86 } | 95 } |
87 | 96 |