teichmann@5835: package org.dive4elements.river.client.shared.model; ingo@1522: ingo@1522: ingo@1554: /** ingo@1554: * @author Ingo Weinzierl ingo@1554: */ ingo@1554: public class IntegerRangeData implements RangeData { ingo@1522: ingo@1575: public static final String TYPE = "intrange"; ingo@1575: ingo@1575: ingo@1522: protected String label; ingo@1522: protected String description; ingo@1522: ingo@1522: protected int lower; ingo@1522: protected int upper; ingo@1522: ingo@1566: protected Integer defLower; ingo@1566: protected Integer defUpper; ingo@1566: ingo@1522: ingo@1522: public IntegerRangeData() { ingo@1522: } ingo@1522: ingo@1522: ingo@1522: public IntegerRangeData(String label, String desc, int lower, int upper) { ingo@1566: this(label, desc, lower, upper, null, null); ingo@1566: } ingo@1566: ingo@1566: ingo@1566: /** ingo@1566: * @param label ingo@1566: * @param desc ingo@1566: * @param lower ingo@1566: * @param upper ingo@1566: * @param defLower ingo@1566: * @param defUpper ingo@1566: */ ingo@1566: public IntegerRangeData( ingo@1566: String label, ingo@1566: String desc, ingo@1566: int lower, ingo@1566: int upper, ingo@1566: Integer defLower, ingo@1566: Integer defUpper ingo@1566: ) { ingo@1522: this.label = label; ingo@1522: this.description = desc; ingo@1522: this.lower = lower; ingo@1522: this.upper = upper; ingo@1566: this.defLower = defLower; ingo@1566: this.defUpper = defUpper; ingo@1522: } ingo@1522: ingo@1522: ingo@1522: /** ingo@1522: * Returns the label of the item. ingo@1522: * ingo@1522: * @return the label. ingo@1522: */ ingo@1522: public String getLabel() { ingo@1522: return label; ingo@1522: } ingo@1522: ingo@1522: ingo@1522: /** ingo@1522: * Returns the description of the item. ingo@1522: * ingo@1522: * @return the description. ingo@1522: */ ingo@1522: public String getDescription() { ingo@1522: return description; ingo@1522: } ingo@1522: ingo@1522: ingo@1522: /** ingo@1522: * Returns the type of the item. ingo@1522: * ingo@1522: * @return the type. ingo@1522: */ ingo@1522: public String getType() { ingo@1522: return "intrange"; ingo@1522: } ingo@1522: ingo@1522: ingo@1522: /** ingo@1524: * Returns a DataItem which value is a string that consists of the min and ingo@1524: * max value separated by a ';'. ingo@1522: * ingo@1524: * @return the DataItem. ingo@1522: */ ingo@1522: public DataItem[] getItems() { ingo@1522: String theMin = String.valueOf(lower); ingo@1522: String theMax = String.valueOf(upper); ingo@1522: ingo@1577: String label = theMin + " - " + theMax; ingo@1524: String value = theMin + ";" + theMax; ingo@1524: ingo@1577: DataItem item = new DefaultDataItem(label, label, value); ingo@1524: ingo@1524: return new DataItem[] { item }; ingo@1522: } ingo@1522: ingo@1522: ingo@1522: /** ingo@1522: * @return always null. ingo@1522: */ ingo@1522: public DataItem getDefault() { ingo@1522: return null; ingo@1522: } ingo@1522: ingo@1522: ingo@1554: public Object getLower() { ingo@1522: return lower; ingo@1522: } ingo@1522: ingo@1522: ingo@1554: public Object getUpper() { ingo@1522: return upper; ingo@1522: } ingo@1566: ingo@1566: ingo@1566: public Object getDefaultLower() { ingo@1566: return defLower; ingo@1566: } ingo@1566: ingo@1566: ingo@1566: public Object getDefaultUpper() { ingo@1566: return defUpper; ingo@1566: } 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 = lower + ";" + upper; raimund@2535: return data; raimund@2535: } raimund@2535: ingo@1522: } ingo@1522: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :