Mercurial > dive4elements > river
comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/WMSQPSArtifact.java @ 5469:948a106bc4cd
Handle kind filtering in QPS WMS artifact
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Wed, 27 Mar 2013 15:37:37 +0100 |
parents | 84da5ed67e93 |
children |
comparison
equal
deleted
inserted
replaced
5468:84da5ed67e93 | 5469:948a106bc4cd |
---|---|
98 } | 98 } |
99 | 99 |
100 @Override | 100 @Override |
101 protected Envelope getExtent(boolean reproject) { | 101 protected Envelope getExtent(boolean reproject) { |
102 River river = RiverFactory.getRiver(getRiverId()); | 102 River river = RiverFactory.getRiver(getRiverId()); |
103 List<CrossSectionTrack> qps; | |
103 | 104 |
104 List<CrossSectionTrack> qps = | 105 String kind = getIdPart(2); |
105 CrossSectionTrack.getCrossSectionTrack(river.getName()); | 106 |
107 if (kind != null && kind.equals("1")) { | |
108 qps = CrossSectionTrack.getCrossSectionTrack(river.getName(), | |
109 Integer.parseInt(kind)); | |
110 } else if (kind != null) { | |
111 qps = CrossSectionTrack.getCrossSectionTrack(river.getName(), | |
112 getName(), Integer.parseInt(kind)); | |
113 } else { | |
114 qps = CrossSectionTrack.getCrossSectionTrack(river.getName(), | |
115 getName()); | |
116 } | |
106 | 117 |
107 Envelope max = null; | 118 Envelope max = null; |
108 | 119 |
109 for (CrossSectionTrack qp: qps) { | 120 for (CrossSectionTrack qp: qps) { |
110 Envelope env = qp.getGeom().getEnvelopeInternal(); | 121 Envelope env = qp.getGeom().getEnvelopeInternal(); |
122 : max; | 133 : max; |
123 } | 134 } |
124 | 135 |
125 @Override | 136 @Override |
126 protected String getFilter() { | 137 protected String getFilter() { |
127 return "river_id=" + String.valueOf(getRiverId()); | 138 String kind = getIdPart(2); |
139 if (kind != null && kind.equals("1")) { | |
140 // There can be several layers named qps that differ in kind | |
141 return "river_id=" + String.valueOf(getRiverId()) + | |
142 " AND kind_id=" + kind; | |
143 } else if (kind != null) { | |
144 return "river_id=" + String.valueOf(getRiverId()) + | |
145 " AND kind_id=" + kind + | |
146 " AND name='" + getName() + "'"; | |
147 } | |
148 return "river_id=" + String.valueOf(getRiverId()) + | |
149 " AND name='" + getName() + "'"; | |
128 } | 150 } |
129 | 151 |
130 @Override | 152 @Override |
131 protected String getDataString() { | 153 protected String getDataString() { |
132 String srid = getSrid(); | 154 String srid = getSrid(); |