--- /dev/null
+/**
+ *
+ */
+package jalview.ws.params.simple;
+
+import jalview.ws.params.ParameterI;
+import jalview.ws.params.ValueConstrainI;
+
+import compbio.metadata.ValueConstrain.Type;
+
+/**
+ * @author jimp
+ *
+ */
+public class IntegerParameter extends Option implements ParameterI
+{
+ int defval;
+ int min,max;
+ public ValueConstrainI getValidValue() {
+ return new ValueConstrainI()
+ {
+
+ @Override
+ public ValueType getType()
+ {
+ return ValueType.Integer;
+ }
+
+ @Override
+ public Number getMin()
+ {
+ if (min<max)
+ {
+ return min;
+ } else {
+ return null;
+ }
+ }
+
+ @Override
+ public Number getMax()
+ {
+ if (min<max)
+ {
+ return max;
+ } else {
+ return null;
+ }
+ }
+ };
+ }
+ public IntegerParameter(IntegerParameter parm)
+ {
+ super(parm);
+ max = parm.max;
+ min = parm.min;
+ }
+
+ public IntegerParameter(String name, String description, boolean required, int defValue,
+ int min, int max)
+ {
+ super(name, description, required, String.valueOf(defValue), null, null, null);
+ defval = defValue;
+ this.min = min;
+ this.max = max;
+ }
+
+ public IntegerParameter(String name, String description, boolean required, int defValue, int value,
+ int min, int max)
+ {
+ super(name, description, required, String.valueOf(defValue), String.valueOf(value), null, null);
+ defval = defValue;
+ this.min = min;
+ this.max = max;
+ }
+ @Override
+ public IntegerParameter copy()
+ {
+ return new IntegerParameter(this);
+ }
+
+}