Class XMLFieldHandler<T>

All Implemented Interfaces:
ConfigurableFieldHandler<T>, FieldHandler<T>
Direct Known Subclasses:
CollectionFieldHandler, DateFieldHandler

public class XMLFieldHandler<T> extends AbstractFieldHandler<T>
This FieldHandler is used in the generated descriptors.

A field handler knows how to perform various operations on the field that require access to the field value.

Version:
$Revision: 9062 $ $Date: 2006-04-14 04:14:43 -0600 (Fri, 14 Apr 2006) $
Author:
Assaf Arkin, Keith Visco
See Also:
  • Constructor Details

    • XMLFieldHandler

      public XMLFieldHandler()
      Creates a new default XMLFieldHandler instance.
  • Method Details

    • equals

      public boolean equals(Object obj)
      Returns true if the given object is an XMLFieldHandler that is equivalent to this one. An equivalent XMLFieldHandler is an XMLFieldHandler that is an instances of the same class. This method can be overwritten to provide more advanced equivalence tests.
      Overrides:
      equals in class Object
      Returns:
      true if the given object is an XMLFieldHandler that is equivalent to this one.
    • getValue

      public T getValue(Object object) throws IllegalStateException
      Returns the value of the field from the object.
      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
    • newInstance

      public T newInstance(Object parent) throws IllegalStateException
      Creates a new instance of the object described by this field.
      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
    • newInstance

      public Object newInstance(Object parent, Object[] args) throws IllegalStateException
      Creates a new instance of the object described by this field.
      Specified by:
      newInstance in class ExtendedFieldHandler<T>
      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
    • setValue

      public void setValue(Object object, T value) throws IllegalStateException, IllegalArgumentException
      Sets the value of the field on the object.
      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.
      IllegalArgumentException - The value passed is not of a supported type.
    • resetValue

      public void resetValue(Object object) throws IllegalStateException, IllegalArgumentException
      Description copied from interface: FieldHandler
      Sets the value of the field to a default value.

      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 compatible with the Java object.
      IllegalArgumentException