Class TypeConversionConverter

All Implemented Interfaces:
Serializable, CoreConverter<DatabaseMapping,Session>, org.eclipse.persistence.internal.descriptors.ClassNameConversionRequired, Converter

public class TypeConversionConverter extends Object implements Converter, org.eclipse.persistence.internal.descriptors.ClassNameConversionRequired
Purpose: Type conversion converters are used to explicitly map a database type to a Java type.
See Also:
James Sutherland
  • Field Details

    • mapping

      protected DatabaseMapping mapping
    • dataClass

      protected Class dataClass
      Field type
    • dataClassName

      protected String dataClassName
    • objectClass

      protected Class objectClass
      Object type
    • objectClassName

      protected String objectClassName
  • Constructor Details

    • TypeConversionConverter

      public TypeConversionConverter()
      PUBLIC: Default constructor.
    • TypeConversionConverter

      public TypeConversionConverter(DatabaseMapping mapping)
      PUBLIC: Default constructor.
  • Method Details

    • convertClassNamesToClasses

      public void convertClassNamesToClasses(ClassLoader classLoader)
      INTERNAL: Convert all the class-name-based settings in this converter to actual class-based settings. This method is used when converting a project that has been built with class names to a project with classes. This method is implemented by subclasses as necessary.
      Specified by:
      convertClassNamesToClasses in interface org.eclipse.persistence.internal.descriptors.ClassNameConversionRequired
      classLoader -
    • convertDataValueToObjectValue

      public Object convertDataValueToObjectValue(Object fieldValue, Session session)
      INTERNAL: The field value must first be converted to the field type, then the attribute type.
      Specified by:
      convertDataValueToObjectValue in interface Converter
      Specified by:
      convertDataValueToObjectValue in interface CoreConverter<DatabaseMapping,Session>
    • getObjectClass

      public Class getObjectClass()
      PUBLIC: Returns the class type of the object value.
    • getObjectClassName

      public String getObjectClassName()
      INTERNAL: Return the name of the object type for the MW usage.
    • getDataClass

      public Class getDataClass()
      PUBLIC: Returns the class type of the data value.
    • getDataClassName

      public String getDataClassName()
      INTERNAL: Return the name of the data type for the MW usage.
    • setDataClass

      public void setDataClass(Class dataClass)
      PUBLIC: Set the class type of the data value.
    • setDataClassName

      public void setDataClassName(String dataClassName)
      INTERNAL: Set the name of the data type for the MW usage.
    • setObjectClass

      public void setObjectClass(Class objectClass)
      PUBLIC: Set the class type of the object value.
    • setObjectClassName

      public void setObjectClassName(String objectClassName)
      INTERNAL: Set the name of the object type for the MW usage.
    • convertObjectValueToDataValue

      public Object convertObjectValueToDataValue(Object attributeValue, Session session)
      INTERNAL: Convert to the field class.
      Specified by:
      convertObjectValueToDataValue in interface Converter
      Specified by:
      convertObjectValueToDataValue in interface CoreConverter<DatabaseMapping,Session>
    • initialize

      public void initialize(DatabaseMapping mapping, Session session)
      INTERNAL: Set the mapping.
      Specified by:
      initialize in interface Converter
      Specified by:
      initialize in interface CoreConverter<DatabaseMapping,Session>
    • getMapping

      protected DatabaseMapping getMapping()
      INTERNAL: Return the mapping.
    • isMutable

      public boolean isMutable()
      INTERNAL: If the converter converts the value to a non-atomic value, i.e. a value that can have its' parts changed without being replaced, then it must return false, serialization can be non-atomic.
      Specified by:
      isMutable in interface Converter