Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/shared/model/FixAnalysisArtifact.java @ 2962:f14d4c668ec5
Bugfix: #698 Fix-Analysis is working in Tomcat again.
flys-client/trunk@4949 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Ingo Weinzierl <ingo.weinzierl@intevation.de> |
---|---|
date | Thu, 12 Jul 2012 12:26:14 +0000 |
parents | 1780841d79af |
children | bf080e932d54 |
line wrap: on
line source
package de.intevation.flys.client.shared.model; import java.util.List; import com.google.gwt.core.client.GWT; /** * The Fixanalysis implementation of an Artifact. * * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> */ public class FixAnalysisArtifact extends DefaultArtifact { /** The name of this artifact: 'minfo'.*/ public static final String NAME = "fixanalysis"; protected FixFilter filter; public FixAnalysisArtifact() { this.filter = null; } public FixAnalysisArtifact(String uuid, String hash) { super(uuid, hash); this.filter = null; } public FixAnalysisArtifact( String uuid, String hash, boolean inBackground, List<CalculationMessage> messages ) { super(uuid, hash, inBackground, messages); } public String getName() { return NAME; } public FixFilter getFilter () { return createFilter(); } protected FixFilter createFilter() { if (this.filter == null) { this.filter = new FixFilter(); } DataList[] old = artifactDescription.getOldData(); String river = artifactDescription.getDataValueAsString("river"); if (river != null) { this.filter.setRiver(river); } String from = artifactDescription.getDataValueAsString("from"); if (from != null) { try { double fkm = Double.valueOf(from).doubleValue(); this.filter.setFromKm(fkm); } catch(NumberFormatException nfe) { GWT.log("Could not parse from km."); } } String to = artifactDescription.getDataValueAsString("to"); if (to != null) { try { double tkm = Double.valueOf(to).doubleValue(); this.filter.setToKm(tkm); } catch(NumberFormatException nfe) { GWT.log("Could not parse to km"); } } String start = artifactDescription.getDataValueAsString("start"); if (start != null) { try { long s = Long.parseLong(start); this.filter.setFromDate(s); } catch(NumberFormatException nfe) { GWT.log("Could not parse start date"); } } String end = artifactDescription.getDataValueAsString("end"); if (end != null) { try { long e = Long.parseLong(end); this.filter.setToDate(e); } catch(NumberFormatException nfe) { GWT.log("Could not parse end date"); } } String q1 = artifactDescription.getDataValueAsString("q1"); if (q1 != null) { try { int q1i = Integer.valueOf(q1).intValue(); this.filter.setFromClass(q1i); } catch(NumberFormatException nfe) { GWT.log("Could not parse start class"); } } String q2 = artifactDescription.getDataValueAsString("q2"); if (q2 != null) { try { int q2i =Integer.valueOf(q2).intValue(); this.filter.setToClass(q2i); } catch(NumberFormatException nfe) { GWT.log("could not parse end class"); } } for (DataList list: old) { List<Data> items = list.getAll(); String state = list.getState(); if(state.equals("state.fix.eventselect")) { Data de = getData(items, "events"); IntegerArrayData iad = (IntegerArrayData) de; this.filter.setEvents(iad.getValues()); } } return this.filter; } protected Data getData(List<Data> data, String name) { for (Data d: data) { if (name.equals(d.getLabel())) { return d; } } return null; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :