annotate artifacts/src/main/java/org/dive4elements/river/artifacts/model/map/HWSContainer.java @ 5838:5aa05a7a34b7

Rename modules to more fitting names.
author Sascha L. Teichmann <teichmann@intevation.de>
date Thu, 25 Apr 2013 15:23:37 +0200
parents flys-artifacts/src/main/java/org/dive4elements/river/artifacts/model/map/HWSContainer.java@bd047b71ab37
children 4897a58c8746
rev   line source
5831
bd047b71ab37 Repaired internal references
Sascha L. Teichmann <teichmann@intevation.de>
parents: 5313
diff changeset
1 package org.dive4elements.river.artifacts.model.map;
5307
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
2
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
3 import java.util.ArrayList;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
4 import java.util.List;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
5
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
6 import org.apache.log4j.Logger;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
7
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
8 public class HWSContainer
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
9 {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
10 private static Logger logger = Logger.getLogger(HWSContainer.class);
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
11 private String river;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
12 private HWS.TYPE type;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
13 private List<HWS> hws;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
14
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
15 public HWSContainer() {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
16 river = null;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
17 hws = new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
18 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
19
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
20 public HWSContainer(String river, HWS.TYPE type, List<HWS> hws) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
21 this.river = river;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
22 this.hws = hws;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
23 this.type = type;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
24 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
25
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
26 public void setRiver(String river) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
27 this.river = river;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
28 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
29
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
30 public String getRiver() {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
31 return this.river;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
32 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
33
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
34 public HWS.TYPE getType() {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
35 return type;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
36 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
37
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
38 public void setType(HWS.TYPE type) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
39 this.type = type;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
40 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
41
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
42 public List<HWS> getHws() {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
43 return hws;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
44 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
45
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
46 public void addHws(HWS hws) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
47 logger.debug("add hws: " + hws.getName());
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
48 this.hws.add(hws);
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
49 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
50
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
51 public void addHws(List<HWS> hws) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
52 this.hws.addAll(hws);
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
53 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
54
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
55 public List<HWS> getOfficialHWS() {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
56 if (hws == null || hws.size() == 0) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
57 return new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
58 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
59 List<HWS> results = new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
60 for (HWS h: hws) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
61 if (h.isOfficial()) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
62 results.add(h);
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
63 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
64 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
65 return results;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
66 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
67
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
68 public List<HWS> getHws(String name) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
69 logger.debug("find: " + name + " in " + hws.size() + " elements");
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
70 if (hws == null || hws.size() == 0) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
71 return new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
72 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
73 List<HWS> results = new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
74 for (HWS h: hws) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
75 if (h.getName().equals(name)) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
76 results.add(h);
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
77 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
78 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
79 logger.debug("found: " + results.size());
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
80 return results;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
81 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
82
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
83 public List<HWS> getHws(List<String> list) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
84 if (hws == null || hws.size() == 0) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
85 return new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
86 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
87 List<HWS> results = new ArrayList<HWS>();
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
88 for (String name : list) {
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
89 results.addAll(getHws(name));
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
90 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
91 return results;
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
92 }
6131b352e5e4 Data structure and factory for hws.
Raimund Renkert <rrenkert@intevation.de>
parents:
diff changeset
93 }

http://dive4elements.wald.intevation.org