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

public Class MultitenantMetadata

extends ORMetadata
Class Inheritance
Imports
java.util.ArrayList, .List, org.eclipse.persistence.annotations.MultitenantType, .TenantDiscriminatorColumn, .TenantDiscriminatorColumns, .TenantTableDiscriminator, org.eclipse.persistence.config.CacheIsolationType, org.eclipse.persistence.descriptors.ClassDescriptor, .MultitenantPolicy, .SingleTableMultitenantPolicy, .TablePerMultitenantPolicy, .VPDMultitenantPolicy, org.eclipse.persistence.internal.jpa.metadata.MetadataDescriptor, .MetadataLogger, .ORMetadata, org.eclipse.persistence.internal.jpa.metadata.accessors.MetadataAccessor, org.eclipse.persistence.internal.jpa.metadata.accessors.classes.EntityAccessor, org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataAccessibleObject, .MetadataAnnotation, org.eclipse.persistence.internal.jpa.metadata.columns.TenantDiscriminatorColumnMetadata, org.eclipse.persistence.internal.jpa.metadata.xml.XMLEntityMappings, org.eclipse.persistence.sessions.server.ConnectionPolicy, .ServerSession

Object to hold onto multi-tenant metadata. Key notes: - any metadata mapped from XML to this class must be compared in the equals method. - any metadata mapped from XML to this class must be initialized in the initXMLObject 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
EclipseLink 2.3

Field Summary

Modifier and TypeField and Description
private Boolean
private List<TenantDiscriminatorColumnMetadata>
private TenantTableDiscriminatorMetadata
private String
Inherited from org.eclipse.persistence.internal.jpa.metadata.ORMetadata:
m_project

Constructor Summary

AccessConstructor and Description
public
MultitenantMetadata()

INTERNAL: Used for XML loading.

public
MultitenantMetadata(MetadataAnnotation multitenant, MetadataAccessor accessor)

INTERNAL: Used for annotation loading.

Method Summary

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

Implements abstract org.eclipse.persistence.internal.jpa.metadata.ORMetadata.equals.

INTERNAL:
public Boolean
getIncludeCriteria()

INTERNAL: Used for OX mapping.

public List<TenantDiscriminatorColumnMetadata>
getTenantDiscriminatorColumns()

INTERNAL: Used for OX mapping.

public TenantTableDiscriminatorMetadata
getTenantTableDiscriminator()

INTERNAL: Used for OX mapping.

public String
getType()

INTERNAL: Used for OX mapping.

public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for the object.
public boolean
includeCriteria()

INTERNAL:

public void
public void
process(MetadataDescriptor descriptor)

INTERNAL:

protected void
processTenantDiscriminators(MetadataDescriptor descriptor, SingleTableMultitenantPolicy policy)

INTERNAL: Process the tenant discriminator metadata.

protected void
processTenantTableDiscriminator(MetadataDescriptor descriptor, TablePerMultitenantPolicy policy)

INTERNAL: Process the tenant table discriminator metadata.

public void
setIncludeCriteria(Boolean includeCriteria)

INTERNAL: Used for OX mapping.

public void
setTenantDiscriminatorColumns(List<TenantDiscriminatorColumnMetadata> tenantDiscriminatorColumns)

INTERNAL: Used for OX mapping.

public void
setTenantTableDiscriminator(TenantTableDiscriminatorMetadata tenantTableDiscriminator)

INTERNAL: Used for OX mapping.

public void
setType(String type)

INTERNAL: Used for OX mapping.

Inherited from org.eclipse.persistence.internal.jpa.metadata.ORMetadata:
getAccessibleObjectgetAccessibleObjectNamegetAnnotationgetBoxedTypegetDatabaseTypeEnumgetEntityMappingsgetFullyQualifiedClassNamegetIdentifiergetJavaClassgetJavaClassNamegetLoadergetLocationgetLoggergetMetadataClassgetMetadataClassgetMetadataClassgetMetadataFactorygetNamegetPrimitiveClassForNamegetProjectgetTextgetXMLElementhasIdentifierhasTextinitXMLClassNameinitXMLObjectinitXMLObjectsinitXMLTextObjectloadedFromAnnotationloadedFromEclipseLinkXMLloadedFromXMLmergemergeORObjectListsmergeORObjectsmergeSimpleObjectsreloadEntityreloadMappedSuperclasssetAccessibleObjectsetEntityMappingssetFieldNamesetFieldNamesetProjectshouldOverridevaluesMatchvaluesMatch

Field Detail

m_includeCriteriaback to summary
private Boolean m_includeCriteria
m_tenantDiscriminatorColumnsback to summary
private List<TenantDiscriminatorColumnMetadata> m_tenantDiscriminatorColumns
m_tenantTableDiscriminatorback to summary
private TenantTableDiscriminatorMetadata m_tenantTableDiscriminator
m_typeback to summary
private String m_type

Constructor Detail

MultitenantMetadataback to summary
public MultitenantMetadata()

INTERNAL: Used for XML loading.

MultitenantMetadataback to summary
public MultitenantMetadata(MetadataAnnotation multitenant, MetadataAccessor accessor)

INTERNAL: Used for annotation loading.

Method Detail

equalsback to summary
public boolean equals(Object objectToCompare)

Implements abstract org.eclipse.persistence.internal.jpa.metadata.ORMetadata.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
getIncludeCriteriaback to summary
public Boolean getIncludeCriteria()

INTERNAL: Used for OX mapping.

getTenantDiscriminatorColumnsback to summary
public List<TenantDiscriminatorColumnMetadata> getTenantDiscriminatorColumns()

INTERNAL: Used for OX mapping.

getTenantTableDiscriminatorback to summary
public TenantTableDiscriminatorMetadata getTenantTableDiscriminator()

INTERNAL: Used for OX mapping.

getTypeback to summary
public String getType()

INTERNAL: Used for OX mapping.

hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.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
includeCriteriaback to summary
public boolean includeCriteria()

INTERNAL:

initXMLObjectback to summary
public void initXMLObject(MetadataAccessibleObject accessibleObject, XMLEntityMappings entityMappings)

Overrides org.eclipse.persistence.internal.jpa.metadata.ORMetadata.initXMLObject.

INTERNAL:

Annotations
@Override
processback to summary
public void process(MetadataDescriptor descriptor)

INTERNAL:

processTenantDiscriminatorsback to summary
protected void processTenantDiscriminators(MetadataDescriptor descriptor, SingleTableMultitenantPolicy policy)

INTERNAL: Process the tenant discriminator metadata.

processTenantTableDiscriminatorback to summary
protected void processTenantTableDiscriminator(MetadataDescriptor descriptor, TablePerMultitenantPolicy policy)

INTERNAL: Process the tenant table discriminator metadata.

setIncludeCriteriaback to summary
public void setIncludeCriteria(Boolean includeCriteria)

INTERNAL: Used for OX mapping.

setTenantDiscriminatorColumnsback to summary
public void setTenantDiscriminatorColumns(List<TenantDiscriminatorColumnMetadata> tenantDiscriminatorColumns)

INTERNAL: Used for OX mapping.

setTenantTableDiscriminatorback to summary
public void setTenantTableDiscriminator(TenantTableDiscriminatorMetadata tenantTableDiscriminator)

INTERNAL: Used for OX mapping.

setTypeback to summary
public void setType(String type)

INTERNAL: Used for OX mapping.