Class EnumFieldHandler
- java.lang.Object
-
- org.exolab.castor.mapping.loader.FieldHandlerFriend
-
- org.exolab.castor.mapping.ExtendedFieldHandler
-
- org.exolab.castor.mapping.AbstractFieldHandler
-
- org.exolab.castor.mapping.GeneralizedFieldHandler
-
- org.exolab.castor.mapping.handlers.EnumFieldHandler
-
- All Implemented Interfaces:
ConfigurableFieldHandler
,FieldHandler
public class EnumFieldHandler extends GeneralizedFieldHandler
A specialized FieldHandler for the type-safe enum style classes. Adapted from org.exolab.castor.xml.handlers.EnumFieldHandler which is used for the generated source code.- Version:
- $Revision: 6238 $ $Date: 2006-04-13 06:47:36 -0600 (Thu, 13 Apr 2006) $
- Author:
- Keith Visco
-
-
Field Summary
-
Fields inherited from class org.exolab.castor.mapping.AbstractFieldHandler
_properties
-
-
Constructor Summary
Constructors Constructor Description EnumFieldHandler(java.lang.Class enumType, FieldHandler handler, java.lang.reflect.Method createMethod)
Creates a new EnumFieldHandler with the given type and FieldHandler
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Object
convertUponGet(java.lang.Object value)
This method is used to convert the value when the getValue method is called.java.lang.Object
convertUponSet(java.lang.Object value)
This method is used to convert the value when the setValue method is called.boolean
equals(java.lang.Object obj)
Returns true if the given object is an XMLFieldHandler that is equivalent to the delegated handler.java.lang.Class
getFieldType()
Returns the class type for the field that this GeneralizedFieldHandler converts to and from.java.lang.Object
newInstance(java.lang.Object parent)
Creates a new instance of the object described by this field.java.lang.Object
newInstance(java.lang.Object parent, java.lang.Object[] args)
Creates a new instance of the object described by this field.-
Methods inherited from class org.exolab.castor.mapping.GeneralizedFieldHandler
getValue, resetValue, setCollectionIteration, setFieldHandler, setValue
-
Methods inherited from class org.exolab.castor.mapping.AbstractFieldHandler
getFieldDescriptor, hasValue, setConfiguration, setFieldDescriptor
-
Methods inherited from class org.exolab.castor.mapping.ExtendedFieldHandler
checkValidity
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.exolab.castor.mapping.FieldHandler
checkValidity
-
-
-
-
Constructor Detail
-
EnumFieldHandler
public EnumFieldHandler(java.lang.Class enumType, FieldHandler handler, java.lang.reflect.Method createMethod)
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
-
convertUponGet
public java.lang.Object convertUponGet(java.lang.Object value)
Description copied from class:GeneralizedFieldHandler
This method is used to convert the value when the getValue method is called. The getValue method will obtain the actual field value from given 'parent' object. This convert method is then invoked with the field's value. The value returned from this method will be the actual value returned by getValue method.- Specified by:
convertUponGet
in classGeneralizedFieldHandler
- Parameters:
value
- the object value to convert after performing a get operation- Returns:
- the converted value.
- See Also:
GeneralizedFieldHandler.convertUponGet(java.lang.Object)
-
convertUponSet
public java.lang.Object convertUponSet(java.lang.Object value) throws java.lang.IllegalStateException
Description copied from class:GeneralizedFieldHandler
This method is used to convert the value when the setValue method is called. The setValue method will call this method to obtain the converted value. The converted value will then be used as the value to set for the field.- Specified by:
convertUponSet
in classGeneralizedFieldHandler
- Parameters:
value
- the object value to convert before performing a set operation- Returns:
- the converted value.
- Throws:
java.lang.IllegalStateException
- See Also:
GeneralizedFieldHandler.convertUponSet(java.lang.Object)
-
getFieldType
public java.lang.Class getFieldType()
Description copied from class:GeneralizedFieldHandler
Returns the class type for the field that this GeneralizedFieldHandler converts to and from. This should be the type that is used in the object model.- Specified by:
getFieldType
in classGeneralizedFieldHandler
- Returns:
- the class type of of the field
- See Also:
GeneralizedFieldHandler.getFieldType()
-
newInstance
public java.lang.Object newInstance(java.lang.Object parent) throws java.lang.IllegalStateException
Description copied from class:GeneralizedFieldHandler
Creates a new instance of the object described by this field.- Specified by:
newInstance
in interfaceFieldHandler
- Overrides:
newInstance
in classGeneralizedFieldHandler
- 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- See Also:
FieldHandler.newInstance(java.lang.Object)
-
newInstance
public java.lang.Object newInstance(java.lang.Object parent, java.lang.Object[] args) throws java.lang.IllegalStateException
Description copied from class:GeneralizedFieldHandler
Creates a new instance of the object described by this field.- Overrides:
newInstance
in classGeneralizedFieldHandler
- Parameters:
parent
- The object for which the field is createdargs
- the set of constructor arguments- Returns:
- A new instance of the field's value
- Throws:
java.lang.IllegalStateException
- This field is a simple type and cannot be instantiated- See Also:
ExtendedFieldHandler.newInstance(java.lang.Object, java.lang.Object[])
-
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:
equals
in classjava.lang.Object
- Returns:
- true if the given object is an XMLFieldHandler that is equivalent to this one.
-
-