[PATCH 1 of 6] Added new state data type

Wald Commits scm-commit at wald.intevation.org
Thu Mar 20 13:37:28 CET 2014


# HG changeset patch
# User Raimund Renkert <rrenkert at intevation.de>
# Date 1395318763 -3600
# Branch minfo-opt
# Node ID 5c80f419aea411ca527a52d4e43c2f849dd7fea2
# Parent  b468dc65154a06106d79a139f97cb328c3130f8c
Added new state data type.

The new datatype takes a set of additional attributes and stores them to a
map.

diff -r b468dc65154a -r 5c80f419aea4 gwt-client/src/main/java/org/dive4elements/river/client/shared/model/MultiAttributeData.java
--- /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;
+    }
+}
diff -r b468dc65154a -r 5c80f419aea4 gwt-client/src/main/java/org/dive4elements/river/client/shared/model/MultiDataItem.java
--- /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;
+    }
+}


More information about the Dive4Elements-commits mailing list