Package org.exolab.castor.xml.handlers
Class EnumFieldHandler
- java.lang.Object
-
- org.exolab.castor.xml.handlers.EnumFieldHandler
-
- All Implemented Interfaces:
FieldHandler
public class EnumFieldHandler extends java.lang.Object implements FieldHandler
A specialized FieldHandler for the XML Schema enumeration types.- Version:
- $Revision: 7168 $ $Date: 2006-04-13 06:47:36 -0600 (Thu, 13 Apr 2006) $
- Author:
- Keith Visco
-
-
Constructor Summary
Constructors Constructor Description EnumFieldHandler(java.lang.Class enumType, FieldHandler handler)Creates a new EnumFieldHandler with the given type and FieldHandler.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckValidity(java.lang.Object object)Checks the field validity.booleanequals(java.lang.Object obj)Returns true if the given object is an XMLFieldHandler that is equivalent to the delegated handler.java.lang.ObjectgetValue(java.lang.Object target)Returns the value of the field associated with this descriptor from the given target object.java.lang.ObjectnewInstance(java.lang.Object parent)Creates a new instance of the object described by this field.voidresetValue(java.lang.Object target)Sets the value of the field to a default value -- for enum, no action needed.voidsetValue(java.lang.Object target, java.lang.Object value)Sets the value of the field associated with this descriptor.
-
-
-
Constructor Detail
-
EnumFieldHandler
public EnumFieldHandler(java.lang.Class enumType, FieldHandler handler)Creates a new EnumFieldHandler with the given type and FieldHandler.- Parameters:
enumType- the Class type of the described fieldhandler- the FieldHandler to delegate to
-
-
Method Detail
-
getValue
public java.lang.Object getValue(java.lang.Object target) throws java.lang.IllegalStateExceptionReturns the value of the field associated with this descriptor from the given target object.- Specified by:
getValuein interfaceFieldHandler- Parameters:
target- the object to get the value from- Returns:
- the value of the field associated with this descriptor from the given target object.
- Throws:
java.lang.IllegalStateException- The Java object has changed and is no longer supported by this handler, or the handler is not compatible with the Java object
-
setValue
public void setValue(java.lang.Object target, java.lang.Object value) throws java.lang.IllegalStateExceptionSets the value of the field associated with this descriptor.- Specified by:
setValuein interfaceFieldHandler- Parameters:
target- the object in which to set the valuevalue- the value of the field- Throws:
java.lang.IllegalStateException- The Java object has changed and is no longer supported by this handler, or the handler is not compatible with the Java object.
-
resetValue
public void resetValue(java.lang.Object target)
Sets the value of the field to a default value -- for enum, no action needed.- Specified by:
resetValuein interfaceFieldHandler- Parameters:
target- The object.
-
checkValidity
public void checkValidity(java.lang.Object object) throws ValidityException, java.lang.IllegalStateExceptionChecks the field validity. Returns successfully if the field can be stored, is valid, etc, throws an exception otherwise.- Specified by:
checkValidityin interfaceFieldHandler- Parameters:
object- The object- Throws:
ValidityException- The field is invalid, is required and null, or any other validity violationjava.lang.IllegalStateException- The Java object has changed and is no longer supported by this handler, or the handler is not compatiable with the Java object
-
newInstance
public java.lang.Object newInstance(java.lang.Object parent) throws java.lang.IllegalStateExceptionCreates a new instance of the object described by this field.- Specified by:
newInstancein interfaceFieldHandler- Parameters:
parent- The object for which the field is created- Returns:
- A new instance of the field's value
- Throws:
java.lang.IllegalStateException- This field is a simple type and cannot be instantiated
-
equals
public boolean equals(java.lang.Object obj)
Returns true if the given object is an XMLFieldHandler that is equivalent to the delegated handler. An equivalent XMLFieldHandler is an XMLFieldHandler that is an instances of the same class.- Overrides:
equalsin classjava.lang.Object- Returns:
- true if the given object is an XMLFieldHandler that is equivalent to this one.
-
-