Mercurial > dive4elements > river
changeset 7821:5c80f419aea4 minfo-opt
Added new state data type.
The new datatype takes a set of additional attributes and stores them to a
map.
author | Raimund Renkert <rrenkert@intevation.de> |
---|---|
date | Thu, 20 Mar 2014 13:32:43 +0100 |
parents | b468dc65154a |
children | 7227082baca3 |
files | gwt-client/src/main/java/org/dive4elements/river/client/shared/model/MultiAttributeData.java gwt-client/src/main/java/org/dive4elements/river/client/shared/model/MultiDataItem.java |
diffstat | 2 files changed, 153 insertions(+), 0 deletions(-) [+] |
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/MultiAttributeData.java Thu Mar 20 13:32:43 2014 +0100 @@ -0,0 +1,92 @@ +package org.dive4elements.river.client.shared.model; + + +public class MultiAttributeData +implements Data +{ + + public static final String TYPE = "multiattribute"; + + protected String label; + protected String description; + + public DataItem[] opts; + + + public MultiAttributeData() { + } + + + public MultiAttributeData(String label, String desc, DataItem[] opts) { + this.label = label; + this.description = desc; + this.opts = opts; + } + + + /** + * Returns the label of the item. + * + * @return the label. + */ + public String getLabel() { + return label; + } + + + /** + * Returns the description of the item. + * + * @return the description. + */ + public String getDescription() { + return description; + } + + + /** + * Returns the type of the item. + * + * @return the type. + */ + public String getType() { + return TYPE; + } + + + /** + * Returns the data items which represent the allowed options for this Data. + * + * @return the allowed options as DataItem array. + */ + public DataItem[] getItems() { + return opts; + } + + + /** + * @return always null. + */ + public DataItem getDefault() { + return null; + } + + + /** + * Returns the values as colon separated string. + * + * @return colon separated string. + */ + public String getStringValue() { + String data = ""; + boolean first = true; + for (int i = 0; i < opts.length; i++) { + if (!first) { + data += ";"; + } + data += opts[i].getStringValue(); + first = false; + } + return data; + } +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gwt-client/src/main/java/org/dive4elements/river/client/shared/model/MultiDataItem.java Thu Mar 20 13:32:43 2014 +0100 @@ -0,0 +1,61 @@ +package org.dive4elements.river.client.shared.model; + +import java.util.Map; + + +public class MultiDataItem +implements DataItem +{ + /** The label. */ + protected String label; + + /** The description. */ + protected String description; + + /** The value. */ + protected Map<String, String> value; + + + public MultiDataItem() { + } + + /** + * The default constructor to create new instances. + * + * @param label The label. + * @param description The description. + * @param value The value. + */ + public MultiDataItem( + String label, + String description, + Map<String, String> value + ) { + this.label = label; + this.description = description; + this.value = value; + } + + + public String getLabel() { + return label; + } + + + public String getDescription() { + return description; + } + + + public String getStringValue() { + String v = ""; + for (Map.Entry<String, String> e: value.entrySet()) { + v += e.getKey() + ":" + e.getValue() + ";"; + } + return v; + } + + public Map<String, String> getValue() { + return value; + } +}