Mercurial > dive4elements > gnv-client
diff gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java @ 232:3d6d89bcbf42
Added special Data-Selection to the ODV-Exports of TimeSeries on TimeSeriesPoints. issue68
gnv-artifacts/trunk@300 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Tim Englich <tim.englich@intevation.de> |
---|---|
date | Mon, 09 Nov 2009 08:55:01 +0000 |
parents | 3e82b4f1c455 |
children | 4e8f0fd8ed79 |
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java Fri Nov 06 11:12:45 2009 +0000 +++ b/gnv-artifacts/src/main/java/de/intevation/gnv/transition/TransitionBase.java Mon Nov 09 08:55:01 2009 +0000 @@ -368,35 +368,7 @@ this.alternativeTransition.advance(uuid, callMeta); }else{ try { - List<String> list = new ArrayList<String>(); - Iterator<String> it = this.inputValueNames.iterator(); - int i = 0; - while (it.hasNext()) { - String value = it.next(); - InputData data = this.inputData.get(value); - if (data != null - && this.inputValues.containsKey(data.getName())) { - int size = this.inputValues.get(data.getName()) - .usedInQueries(); - String type = this.inputValues.get(data.getName()) - .getType(); - String requestValue = data.getValue(); - if (type.equalsIgnoreCase("string")) { - requestValue = this - .prepareInputData4DBQuery(requestValue); - } else if (type.equalsIgnoreCase("date")) { - requestValue = this - .prepareInputData4DateDBQuery(requestValue); - } else if (type.equalsIgnoreCase("coordinate")){ - requestValue = this - .prepareInputData4RegionDBQuery(requestValue); - } - for (int j = 0; j < size; j++) { - list.add(requestValue); - } - } - } - String[] filterValues = list.toArray(new String[0]); + String[] filterValues = this.generateFilterValuesFromInputData(); Collection<Result> result = null; try { if (this.queryID != null) { @@ -415,6 +387,41 @@ } } } + + /** + * @return + */ + protected String[] generateFilterValuesFromInputData() { + List<String> list = new ArrayList<String>(); + Iterator<String> it = this.inputValueNames.iterator(); + while (it.hasNext()) { + String value = it.next(); + InputData data = this.inputData.get(value); + if (data != null + && this.inputValues.containsKey(data.getName())) { + int size = this.inputValues.get(data.getName()) + .usedInQueries(); + String type = this.inputValues.get(data.getName()) + .getType(); + String requestValue = data.getValue(); + if (type.equalsIgnoreCase("string")) { + requestValue = this + .prepareInputData4DBQuery(requestValue); + } else if (type.equalsIgnoreCase("date")) { + requestValue = this + .prepareInputData4DateDBQuery(requestValue); + } else if (type.equalsIgnoreCase("coordinate")){ + requestValue = this + .prepareInputData4RegionDBQuery(requestValue); + } + for (int j = 0; j < size; j++) { + list.add(requestValue); + } + } + } + String[] filterValues = list.toArray(new String[0]); + return filterValues; + } protected String prepareInputData4RegionDBQuery(String value){ return value;