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.shared.model; ingo@2533: ingo@2533: ingo@2533: public class StringOptionsData implements Data { ingo@2533: ingo@2533: public static final String TYPE = "options"; ingo@2533: ingo@2533: protected String label; ingo@2533: protected String description; ingo@2533: ingo@2533: public DataItem[] opts; ingo@2533: ingo@2533: ingo@2533: public StringOptionsData() { ingo@2533: } ingo@2533: ingo@2533: ingo@2533: public StringOptionsData(String label, String desc, DataItem[] opts) { ingo@2533: this.label = label; raimund@3704: this.description = desc; ingo@2533: this.opts = opts; ingo@2533: } ingo@2533: ingo@2533: ingo@2533: /** ingo@2533: * Returns the label of the item. ingo@2533: * ingo@2533: * @return the label. ingo@2533: */ ingo@2533: public String getLabel() { ingo@2533: return label; ingo@2533: } ingo@2533: ingo@2533: ingo@2533: /** ingo@2533: * Returns the description of the item. ingo@2533: * ingo@2533: * @return the description. ingo@2533: */ ingo@2533: public String getDescription() { ingo@2533: return description; ingo@2533: } ingo@2533: ingo@2533: ingo@2533: /** ingo@2533: * Returns the type of the item. ingo@2533: * ingo@2533: * @return the type. ingo@2533: */ ingo@2533: public String getType() { ingo@2533: return TYPE; ingo@2533: } ingo@2533: ingo@2533: ingo@2533: /** ingo@2533: * Returns the data items which represent the allowed options for this Data. ingo@2533: * ingo@2533: * @return the allowed options as DataItem array. ingo@2533: */ ingo@2533: public DataItem[] getItems() { ingo@2533: return opts; ingo@2533: } ingo@2533: ingo@2533: ingo@2533: /** ingo@2533: * @return always null. ingo@2533: */ ingo@2533: public DataItem getDefault() { ingo@2533: return null; ingo@2533: } raimund@2535: raimund@2535: raimund@2535: /** raimund@2535: * Returns the values as colon separated string. raimund@2535: * raimund@2535: * @return colon separated string. raimund@2535: */ raimund@2535: public String getStringValue() { raimund@2535: String data = ""; raimund@2535: boolean first = true; raimund@2535: for (int i = 0; i < opts.length; i++) { raimund@2535: if (!first) { raimund@2535: data += ";"; raimund@2535: } raimund@2535: data += opts[i].getStringValue(); raimund@2535: first = false; raimund@2535: } raimund@2535: return data; raimund@2535: } ingo@2533: } ingo@2533: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :