teichmann@5861: /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde teichmann@5861: * Software engineering by Intevation GmbH teichmann@5861: * teichmann@5861: * This file is Free Software under the GNU AGPL (>=v3) teichmann@5861: * and comes with ABSOLUTELY NO WARRANTY! Check out the teichmann@5861: * documentation coming with Dive4Elements River for details. teichmann@5861: */ teichmann@5861: teichmann@5835: package org.dive4elements.river.client.client.ui; ingo@901: teichmann@5835: import org.dive4elements.river.client.shared.model.Data; teichmann@5835: import org.dive4elements.river.client.shared.model.DataItem; teichmann@5835: import org.dive4elements.river.client.shared.model.DefaultData; teichmann@5835: import org.dive4elements.river.client.shared.model.DefaultDataItem; teichmann@5835: import org.dive4elements.river.client.shared.model.Recommendation; teichmann@5835: import org.dive4elements.river.client.shared.model.ToLoad; teichmann@5835: import org.dive4elements.river.client.shared.model.User; ingo@901: christian@4131: import java.util.ArrayList; christian@4131: import java.util.List; christian@4131: ingo@901: ingo@901: public class DemDatacagePanel extends DatacagePanel { ingo@901: christian@4131: private static final long serialVersionUID = -2301633938080411687L; christian@4131: ingo@916: public static final String OUT = "floodmap"; ingo@916: public static final String PARAMETERS = "dem:true"; ingo@901: ingo@901: ingo@901: public DemDatacagePanel() { ingo@901: super(); ingo@901: } ingo@901: ingo@901: ingo@901: public DemDatacagePanel(User user) { ingo@901: super(user); ingo@901: } ingo@901: ingo@901: ingo@901: @Override ingo@1268: protected void createWidget() { ingo@1268: super.createWidget(); ingo@1268: widget.setIsMutliSelectable(false); ingo@1268: } ingo@1268: ingo@1268: ingo@1268: @Override ingo@916: public User getUser() { ingo@916: return null; ingo@916: } ingo@916: ingo@916: ingo@916: @Override ingo@901: public String getOuts() { ingo@916: return OUT; ingo@916: } ingo@916: ingo@916: ingo@916: @Override ingo@916: public String getParameters() { ingo@916: return PARAMETERS; ingo@901: } ingo@901: ingo@901: ingo@901: @Override ingo@1447: public List validate() { ingo@1447: List errors = new ArrayList(); ingo@1447: ingo@1447: Recommendation r = getSelectedRecommendation(); ingo@1447: if (r == null) { ingo@1447: errors.add(MSG.requireDGM()); ingo@1447: } ingo@1447: ingo@1447: return errors; ingo@1447: } ingo@1447: ingo@1447: ingo@1447: @Override ingo@901: protected Data[] getData() { ingo@917: Recommendation r = getSelectedRecommendation(); ingo@917: ingo@917: DataItem item = new DefaultDataItem(dataName, dataName, r.getIDs()); ingo@901: return new Data[] { new DefaultData( ingo@901: dataName, null, null, new DataItem[] { item }) }; ingo@901: } ingo@917: ingo@917: ingo@917: protected Recommendation getSelectedRecommendation() { ingo@917: ToLoad toLoad = widget.getSelection(); ingo@917: List recoms = toLoad.toRecommendations(); ingo@917: ingo@1447: return recoms != null && recoms.size() >= 1 ? recoms.get(0) : null; ingo@917: } ingo@901: } ingo@901: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :