Top Description Fields Constructors Methods
org.eclipse.persistence.internal.jpa.metadata.columns

public Class DiscriminatorColumnMetadata

extends MetadataColumn
Class Inheritance
Known Direct Subclasses
org.eclipse.persistence.internal.jpa.metadata.columns.TenantDiscriminatorColumnMetadata
Imports
org.eclipse.persistence.internal.helper.DatabaseField, org.eclipse.persistence.internal.jpa.metadata.MetadataDescriptor, .MetadataHelper, org.eclipse.persistence.internal.jpa.metadata.accessors.MetadataAccessor, org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataAnnotation

INTERNAL: Object to process a JPA discriminator column into an EclipseLink database field. 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.
Author
Guy Pelletier
Since
TopLink EJB 3.0 Reference Implementation

Field Summary

Modifier and TypeField and Description
private String
private Integer
public static final String

Constructor Summary

AccessConstructor and Description
public
DiscriminatorColumnMetadata()

INTERNAL: Used for XML loading.

public
DiscriminatorColumnMetadata(MetadataAccessor accessor)

INTERNAL: Used for defaulting.

public
DiscriminatorColumnMetadata(MetadataAnnotation discriminatorColumn, MetadataAccessor accessor)

INTERNAL: Used for annotation loading.

protected
DiscriminatorColumnMetadata(String xmlElement)

INTERNAL: Used for XML loading.

Method Summary

Modifier and TypeMethod and Description
public boolean
equals(Object
the reference object with which to compare.
objectToCompare
)

Overrides org.eclipse.persistence.internal.jpa.metadata.columns.MetadataColumn.equals.

INTERNAL:
public DatabaseField
public String
getDiscriminatorType()

INTERNAL: Used for OX mapping.

public Integer
getLength()

INTERNAL: Used for OX mapping.

public int
public DatabaseField
process(MetadataDescriptor descriptor, String loggingCtx)

INTERNAL: Process a discriminator column metadata into an EclipseLink DatabaseField.

public void
setDiscriminatorType(String descriminatorType)

INTERNAL: Used for OX mapping.

public void
setLength(Integer length)

INTERNAL: Used for OX mapping.

Inherited from org.eclipse.persistence.internal.jpa.metadata.columns.MetadataColumn:
getColumnDefinitiongetNamesetColumnDefinitionsetName

Field Detail

m_discriminatorTypeback to summary
private String m_discriminatorType
m_lengthback to summary
private Integer m_length
NAME_DEFAULTback to summary
public static final String NAME_DEFAULT

Constructor Detail

DiscriminatorColumnMetadataback to summary
public DiscriminatorColumnMetadata()

INTERNAL: Used for XML loading.

DiscriminatorColumnMetadataback to summary
public DiscriminatorColumnMetadata(MetadataAccessor accessor)

INTERNAL: Used for defaulting.

DiscriminatorColumnMetadataback to summary
public DiscriminatorColumnMetadata(MetadataAnnotation discriminatorColumn, MetadataAccessor accessor)

INTERNAL: Used for annotation loading.

DiscriminatorColumnMetadataback to summary
protected DiscriminatorColumnMetadata(String xmlElement)

INTERNAL: Used for XML loading.

Method Detail

equalsback to summary
public boolean equals(Object objectToCompare)

Overrides org.eclipse.persistence.internal.jpa.metadata.columns.MetadataColumn.equals.

INTERNAL:

Parameters
objectToCompare:Object

Doc from java.lang.Object.equals.

the reference object with which to compare.

Returns:boolean

Doc from java.lang.Object.equals.

true if this object is the same as the obj argument; false otherwise.

Annotations
@Override
getDatabaseFieldback to summary
public DatabaseField getDatabaseField()

Overrides org.eclipse.persistence.internal.jpa.metadata.columns.MetadataColumn.getDatabaseField.

INTERNAL:

Annotations
@Override
getDiscriminatorTypeback to summary
public String getDiscriminatorType()

INTERNAL: Used for OX mapping.

getLengthback to summary
public Integer getLength()

INTERNAL: Used for OX mapping.

hashCodeback to summary
public int hashCode()

Overrides org.eclipse.persistence.internal.jpa.metadata.columns.MetadataColumn.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Returns:int

a hash code value for this object.

Annotations
@Override
processback to summary
public DatabaseField process(MetadataDescriptor descriptor, String loggingCtx)

INTERNAL: Process a discriminator column metadata into an EclipseLink DatabaseField. What is done with that field is up to the caller of this method.

setDiscriminatorTypeback to summary
public void setDiscriminatorType(String descriminatorType)

INTERNAL: Used for OX mapping.

setLengthback to summary
public void setLength(Integer length)

INTERNAL: Used for OX mapping.