Mercurial > dive4elements > river
diff gwt-client/src/main/java/org/dive4elements/river/client/shared/model/PropertySetting.java @ 5838:5aa05a7a34b7
Rename modules to more fitting names.
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Thu, 25 Apr 2013 15:23:37 +0200 |
parents | flys-client/src/main/java/org/dive4elements/river/client/shared/model/PropertySetting.java@821a02bbfb4e |
children | 172338b1407f |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gwt-client/src/main/java/org/dive4elements/river/client/shared/model/PropertySetting.java Thu Apr 25 15:23:37 2013 +0200 @@ -0,0 +1,81 @@ +package org.dive4elements.river.client.shared.model; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +/** + * @author <a href="mailto:raimund.renkert@intevation.de">Raimund Renkert</a> + */ +public class PropertySetting implements Property, Cloneable { + + /**The settings name.*/ + protected String name; + + /** The default value.*/ + protected String value; + + /** Additional attributes.*/ + protected HashMap<String, String> attributes; + + /** + * Create a new StyleSetting for theme attribution. + */ + public PropertySetting() { + this.attributes = new HashMap<String, String>(); + } + + + /** + * Create a new PropertySet. + * @param name The attribute name. + * @param value The current value. + */ + public PropertySetting( + String name, + String value) + { + this.name = name; + this.value = value; + this.attributes = new HashMap<String, String>(); + } + + public void setName(String name) { + this.name = name; + } + + public void setValue(String value) { + this.value = value; + } + + public void setAttribute(String k, String v) { + attributes.put(k, v); + } + + public String getName() { + return this.name; + } + + public Object getValue() { + return this.value; + } + + public String getAttribute(String key) { + return attributes.get(key); + } + + public List<String> getAttributeList() { + return new ArrayList<String>(attributes.keySet()); + } + + @Override + public Object clone() { + PropertySetting clone = new PropertySetting(this.getName(), + this.getValue().toString()); + for(String s: this.getAttributeList()) { + clone.setAttribute(s, this.getAttribute(s)); + } + return clone; + } +} +// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :