comparison flys-artifacts/src/main/java/de/intevation/flys/artifacts/MINFOArtifact.java @ 2713:b60751cfdd6c

Start MINFO middle bed height calculation in the relevant state and creates facets for chart and csv. flys-artifacts/trunk@4437 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Ingo Weinzierl <ingo.weinzierl@intevation.de>
date Fri, 18 May 2012 09:18:39 +0000
parents 4c00cf83fff1
children 2f922be407ea
comparison
equal deleted inserted replaced
2712:ed612b85fb6d 2713:b60751cfdd6c
21 21
22 import de.intevation.flys.artifacts.model.CalculationMessage; 22 import de.intevation.flys.artifacts.model.CalculationMessage;
23 import de.intevation.flys.artifacts.model.FacetTypes; 23 import de.intevation.flys.artifacts.model.FacetTypes;
24 24
25 import de.intevation.flys.artifacts.states.DefaultState; 25 import de.intevation.flys.artifacts.states.DefaultState;
26 import de.intevation.flys.artifacts.states.SoundingsSelect;
26 27
27 import de.intevation.flys.utils.FLYSUtils; 28 import de.intevation.flys.utils.FLYSUtils;
29
30 import gnu.trove.TIntArrayList;
28 31
29 import java.util.LinkedList; 32 import java.util.LinkedList;
30 import java.util.List; 33 import java.util.List;
31 34
32 import org.apache.log4j.Logger; 35 import org.apache.log4j.Logger;
266 return null; 269 return null;
267 } 270 }
268 271
269 return FLYSUtils.intArrayFromString(data); 272 return FLYSUtils.intArrayFromString(data);
270 } 273 }
274
275
276 public int[] getBedHeightSingleIDs() {
277 String data = getDataAsString("soundings");
278
279 if (data == null) {
280 logger.warn("No 'soundings' parameter specified!");
281 return null;
282 }
283
284 String[] parts = data.split(";");
285
286 TIntArrayList ids = new TIntArrayList();
287
288 for (String part: parts) {
289 if (part.indexOf(SoundingsSelect.PREFIX_SINGLE) >= 0) {
290 String tmp = part.replace(SoundingsSelect.PREFIX_SINGLE, "");
291
292 try {
293 ids.add(Integer.parseInt(tmp));
294 }
295 catch (NumberFormatException nfe) {
296 logger.warn("Cannot parse int from string: '" + tmp + "'");
297 }
298 }
299 }
300
301 return ids.toNativeArray();
302 }
303
304
305 public int[] getBedHeightEpochIDs() {
306 String data = getDataAsString("soundings");
307
308 if (data == null) {
309 logger.warn("No 'soundings' parameter specified!");
310 return null;
311 }
312
313 String[] parts = data.split(";");
314
315 TIntArrayList ids = new TIntArrayList();
316
317 for (String part: parts) {
318 if (part.indexOf(SoundingsSelect.PREFIX_EPOCH) >= 0) {
319 String tmp = part.replace(SoundingsSelect.PREFIX_EPOCH, "");
320
321 try {
322 ids.add(Integer.parseInt(tmp));
323 }
324 catch (NumberFormatException nfe) {
325 logger.warn("Cannot parse int from string: '" + tmp + "'");
326 }
327 }
328 }
329
330 return ids.toNativeArray();
331 }
271 } 332 }
272 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : 333 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org