Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/shared/model/OutputSettings.java @ 1503:3304608baf35
Issue 433.
Allways load original chart settings when opening the dialog.
flys-client/trunk@3632 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author | Raimund Renkert <raimund.renkert@intevation.de> |
---|---|
date | Mon, 09 Jan 2012 17:07:17 +0000 |
parents | c899a7ffdc8f |
children | bb5edff31866 |
line wrap: on
line source
package de.intevation.flys.client.shared.model; import java.util.HashMap; import java.util.List; import java.util.ArrayList; /** * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> */ public class OutputSettings implements Settings, Cloneable { /** The output name. */ protected String name; /** The categories and settings container. */ protected HashMap<String, List<Property> > categories; public OutputSettings() { this.categories = new HashMap<String, List<Property> >(); } public OutputSettings(String name) { this.name = name; this.categories = new HashMap<String, List<Property> >(); } public void setName(String name) { this.name = name; } public String getName() { return this.name; } public void setSettings(String category, List<Property> settings) { if (this.categories == null) { this.categories = new HashMap<String, List<Property> >(); } this.categories.put(category, settings); } public List<Property> getSettings(String category) { return categories.get(category); } public List<String> getCategories() { ArrayList<String> list = new ArrayList<String>(categories.keySet()); return list; } public Object clone() { OutputSettings clone = new OutputSettings(this.getName()); for (String s: this.getCategories()) { ArrayList cloneList = new ArrayList<Property>(); for(Property p: this.getSettings(s)) { cloneList.add((Property)p.clone()); } clone.setSettings(s, cloneList); } return clone; } }