de.jstacs.parameters.validation
Class NumberValidator<E extends Comparable<? extends Number>>

java.lang.Object
  extended by de.jstacs.parameters.validation.NumberValidator<E>
Type Parameters:
E - That subclass of Number to validate
All Implemented Interfaces:
ParameterValidator, Storable, Cloneable

public class NumberValidator<E extends Comparable<? extends Number>>
extends Object
implements ParameterValidator

Class that validates all subclasses of Number that implement Comparable (e.g. Double, Long, Float) for compliance with a specified lower and upper bound.

Author:
Jan Grau

Constructor Summary
NumberValidator(E lowerBound, E upperBound)
          Constructs a NumberValidator for a given upper and lower bound.
NumberValidator(StringBuffer representation)
          Constructs a NumberValidator out of a XML representation
 
Method Summary
 boolean checkValue(Object value)
          Returns true if the value is valid and false otherwise
 NumberValidator clone()
          This method returns a deep copy of the current instance.
 void fromXML(StringBuffer representation)
          Parses a NumberValidator from the XML-representation as returned by toXML().
 String getErrorMessage()
          Returns the error message if checkValue() returned false.
 E getLowerBound()
          Returns the lower bound of the NumberValidator
 StringBuffer toXML()
          This method returns an XML-representation of an instance of the implementing class.
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumberValidator

public NumberValidator(E lowerBound,
                       E upperBound)
Constructs a NumberValidator for a given upper and lower bound.

Parameters:
lowerBound - the lower bound
upperBound - the upper bound

NumberValidator

public NumberValidator(StringBuffer representation)
                throws NonParsableException
Constructs a NumberValidator out of a XML representation

Parameters:
representation - the XML representation
Throws:
NonParsableException - is the representation could not be parsed, a NonParsableException is thrown
Method Detail

clone

public NumberValidator clone()
Description copied from interface: ParameterValidator
This method returns a deep copy of the current instance.

Specified by:
clone in interface ParameterValidator
Overrides:
clone in class Object
Returns:
a deep copy
See Also:
Cloneable

getLowerBound

public E getLowerBound()
Returns the lower bound of the NumberValidator

Returns:
the lower bound of the NumberValidator

getErrorMessage

public String getErrorMessage()
Description copied from interface: ParameterValidator
Returns the error message if checkValue() returned false.

Specified by:
getErrorMessage in interface ParameterValidator
Returns:
the error message

checkValue

public boolean checkValue(Object value)
Description copied from interface: ParameterValidator
Returns true if the value is valid and false otherwise

Specified by:
checkValue in interface ParameterValidator
Parameters:
value - the value to check
Returns:
if the value is valid

fromXML

public void fromXML(StringBuffer representation)
             throws NonParsableException
Parses a NumberValidator from the XML-representation as returned by toXML().

Parameters:
representation - the XML-representation
Throws:
NonParsableException - thrown if the XML-code could not be parsed

toXML

public StringBuffer toXML()
Description copied from interface: Storable
This method returns an XML-representation of an instance of the implementing class.

Specified by:
toXML in interface Storable
Returns:
the XML-representation