EclipseLink 2.2.0, build 'v20110202-r8913' API Reference

org.eclipse.persistence.jaxb
Class JAXBTypesafeEnumConverter

java.lang.Object
  extended by org.eclipse.persistence.jaxb.JAXBTypesafeEnumConverter
All Implemented Interfaces:
java.io.Serializable, Converter

public class JAXBTypesafeEnumConverter
extends java.lang.Object
implements Converter

Purpose: JAXBTypesafeEnumConverter is used to allow mapping to type safe enums according to the JAXB 1.0 spec. Object values are not modified by the converter when writing data values. Data values are read in and the "fromString" method on the enumeration class is invoked with the data value as a parameter. The return value from the "fromString" method will be an instance of the enum class specified on the mapping.

See Also:
Serialized Form

Constructor Summary
JAXBTypesafeEnumConverter()
          PUBLIC: Default constructor.
 
Method Summary
 java.lang.Object convertDataValueToObjectValue(java.lang.Object dataValue, Session session)
          INTERNAL: The fromString value on the enum class must be invoked with the field value specified as an argument.
 java.lang.Object convertObjectValueToDataValue(java.lang.Object objectValue, Session session)
          INTERNAL: Return the attribute value.
 java.lang.Class getEnumClass()
          PUBLIC: Get the class which was set as the enum class which contains the fromValue method.
 java.lang.String getEnumClassName()
          PUBLIC: Get the name of the enum class which contains the fromValue method.
 void initialize(DatabaseMapping mapping, Session session)
          INTERNAL: Set the enum class.
 boolean isMutable()
          PUBLIC: If the converter converts the value to a mutable value, i.e.
 void setEnumClass(java.lang.Class enumClass)
          PUBLIC: Set the enum class to know which class to invoke the fromValue method on.
 void setEnumClassName(java.lang.String newClassName)
          PUBLIC: Set the name of the enum class to know which class to invoke the fromValue method on.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JAXBTypesafeEnumConverter

public JAXBTypesafeEnumConverter()
PUBLIC: Default constructor.

Method Detail

convertObjectValueToDataValue

public java.lang.Object convertObjectValueToDataValue(java.lang.Object objectValue,
                                                      Session session)
INTERNAL: Return the attribute value.

Specified by:
convertObjectValueToDataValue in interface Converter

convertDataValueToObjectValue

public java.lang.Object convertDataValueToObjectValue(java.lang.Object dataValue,
                                                      Session session)
INTERNAL: The fromString value on the enum class must be invoked with the field value specified as an argument. The result returned should be an instance of the enum class.

Specified by:
convertDataValueToObjectValue in interface Converter

isMutable

public boolean isMutable()
Description copied from interface: Converter
PUBLIC: If the converter converts the value to a mutable value, i.e. a value that can have its' parts changed without being replaced, then it must return true. If the value is not mutable, cannot be changed without replacing the whole value then false must be returned. This is used within the UnitOfWork to determine how to clone.

Specified by:
isMutable in interface Converter

initialize

public void initialize(DatabaseMapping mapping,
                       Session session)
INTERNAL: Set the enum class.

Specified by:
initialize in interface Converter

getEnumClassName

public java.lang.String getEnumClassName()
PUBLIC: Get the name of the enum class which contains the fromValue method.


setEnumClassName

public void setEnumClassName(java.lang.String newClassName)
PUBLIC: Set the name of the enum class to know which class to invoke the fromValue method on.


setEnumClass

public void setEnumClass(java.lang.Class enumClass)
PUBLIC: Set the enum class to know which class to invoke the fromValue method on.


getEnumClass

public java.lang.Class getEnumClass()
PUBLIC: Get the class which was set as the enum class which contains the fromValue method.


EclipseLink 2.2.0, build 'v20110202-r8913' API Reference