org.exolab.castor.mapping
public abstract class AbstractFieldHandler extends ExtendedFieldHandler
Version: $Revision: 1.3 $ $Date: 2003/04/16 07:16:19 $
See Also: FieldDescriptor FieldHandler
Constructor Summary | |
---|---|
protected | AbstractFieldHandler()
Creates a new default AbstractFieldHandler. |
Method Summary | |
---|---|
protected FieldDescriptor | getFieldDescriptor()
Returns the FieldDescriptor for the field that this
handler is reponsibile for, or null if no FieldDescriptor
has been set. |
abstract Object | getValue(Object object)
Returns the value of the field from the object.
|
abstract Object | newInstance(Object parent)
Creates a new instance of the object described by this field.
|
abstract Object | newInstance(Object parent, Object[] args)
Creates a new instance of the object described by this field.
|
abstract void | resetValue(Object object)
Sets the value of the field to a default value.
|
protected void | setFieldDescriptor(FieldDescriptor fieldDesc)
Sets the FieldDescriptor that this FieldHander is
responsibile for. |
abstract void | setValue(Object object, Object value)
Sets the value of the field on the object.
|
Returns: the FieldDescriptor, or null if none exists.
Parameters: object The object
Returns: The value of the field
Throws: IllegalStateException The Java object has changed and is no longer supported by this handler, or the handler is not compatiable with the Java object
Parameters: parent The object for which the field is created
Returns: A new instance of the field's value
Throws: IllegalStateException This field is a simple type and cannot be instantiated
Parameters: parent The object for which the field is created args the set of constructor arguments
Returns: A new instance of the field's value
Throws: IllegalStateException This field is a simple type and cannot be instantiated
Reference fields are set to null, primitive fields are set to their default value, collection fields are emptied of all elements.
Parameters: object The object
Throws: IllegalStateException The Java object has changed and is no longer supported by this handler, or the handler is not compatiable with the Java object
Parameters: fieldDesc the FieldDescriptor to set
Parameters: object The object value The new value
Throws: IllegalStateException The Java object has changed and is no longer supported by this handler, or the handler is not compatiable with the Java object
UNKNOWN: IllegalArgumentException The value passed is not of a supported type