java.lang.Object
org.eclipse.persistence.internal.jpa.metadata.ORMetadata
org.eclipse.persistence.internal.jpa.metadata.converters.MetadataConverter
Direct Known Subclasses:
AbstractConverterMetadata, ClassInstanceMetadata, EnumeratedMetadata, JSONMetadata, JsonValueMetadata, KryoMetadata, LobMetadata, SerializedMetadata, TemporalMetadata, UUIDMetadata, XMLMetadata

public abstract class MetadataConverter extends ORMetadata
INTERNAL: Abstract converter class that parents both the JPA and Eclipselink converters. Key notes: - any metadata mapped from XML to this class must be compared in the equals method. - when loading from annotations, the constructor accepts the metadata accessor this metadata was loaded from. Used it to look up any 'companion' annotation needed for processing. - methods should be preserved in alphabetical order.
Since:
EclipseLink 1.2
  • Constructor Details

    • MetadataConverter

      protected MetadataConverter()
      INTERNAL: Used for defaulting case.
    • MetadataConverter

      protected MetadataConverter(MetadataAccessor accessor)
      INTERNAL: Used for defaulting.
    • MetadataConverter

      protected MetadataConverter(MetadataAnnotation converter, MetadataAccessor accessor)
      INTERNAL: Used for annotation loading.
    • MetadataConverter

      protected MetadataConverter(String xmlElement)
      INTERNAL: Used for XML loading.
  • Method Details

    • equals

      public boolean equals(Object objectToCompare)
      INTERNAL:
      Specified by:
      equals in class ORMetadata
    • process

      public abstract void process(DatabaseMapping mapping, MappingAccessor accessor, MetadataClass referenceClass, boolean isForMapKey)
      INTERNAL: Every converter needs to be able to process themselves.
    • setConverter

      protected void setConverter(DatabaseMapping mapping, Converter converter, boolean isForMapKey)
      INTERNAL:
    • setConverterClassName

      protected void setConverterClassName(DatabaseMapping mapping, String converterClassName, boolean isForMapKey)
      INTERNAL:
    • setFieldClassification

      protected void setFieldClassification(DatabaseMapping mapping, Class<?> classification, boolean isForMapKey)
      INTERNAL: Wrapper method to make sure we always set the classification name and not class. This class name will be initialized at run time with the real class loader.
    • setFieldClassification

      protected void setFieldClassification(DatabaseMapping mapping, MetadataClass classification, boolean isForMapKey)
      INTERNAL: Wrapper method to make sure we always set the classification name and not class. This class name will be initialized at run time with the real class loader.