Module org.eclipse.persistence.jpa
Class ManyToManyAccessor
- java.lang.Object
-
- org.eclipse.persistence.internal.jpa.metadata.ORMetadata
-
- org.eclipse.persistence.internal.jpa.metadata.accessors.MetadataAccessor
-
- org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.MappingAccessor
-
- org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.RelationshipAccessor
-
- org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.CollectionAccessor
-
- org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.ManyToManyAccessor
-
- All Implemented Interfaces:
MappedKeyMapAccessor
public class ManyToManyAccessor extends CollectionAccessor
INTERNAL: A many to many relationship accessor. 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 handled in the merge method. (merging is done at the accessor/mapping level) - any metadata mapped from XML to this class must be initialized in the initXMLObject method. - methods should be preserved in alphabetical order.- Since:
- TopLink EJB 3.0 Reference Implementation
- Author:
- Guy Pelletier
-
-
Field Summary
-
Fields inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.RelationshipAccessor
m_referenceClass
-
Fields inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.MappingAccessor
KEY_DOT_NOTATION, m_field, VALUE_DOT_NOTATION
-
Fields inherited from class org.eclipse.persistence.internal.jpa.metadata.ORMetadata
m_project
-
-
Constructor Summary
Constructors Constructor Description ManyToManyAccessor()INTERNAL: Used for OX mapping.ManyToManyAccessor(MetadataAnnotation manyToMany, MetadataAnnotatedElement annotatedElement, ClassAccessor classAccessor)INTERNAL:
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object objectToCompare)INTERNAL:protected DatabaseTablegetDefaultTableForEntityMapKey()INTERNAL: Return the default table to hold the foreign key of a MapKey when and Entity is used as the MapKeyprotected StringgetLoggingContext()INTERNAL: Return the logging context for this accessor.inthashCode()booleanisManyToMany()INTERNAL:booleanisPrivateOwned()INTERNAL: A PrivateOwned setting on a ManyToMany is ignored.voidprocess()INTERNAL: Process a many to many metadata accessor into a EclipseLink ManyToManyMapping.-
Methods inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.CollectionAccessor
addAssociationOverride, addAttributeOverride, addMapKeyConvert, getColumn, getDefaultFetchType, getDeleteAll, getEnumerated, getMapKey, getMapKeyAssociationOverrides, getMapKeyAttributeOverrides, getMapKeyClass, getMapKeyClassName, getMapKeyClassWithGenerics, getMapKeyColumn, getMapKeyConvert, getMapKeyConverts, getMapKeyEnumerated, getMapKeyForeignKey, getMapKeyJoinColumns, getMapKeyTemporal, getOrderBy, getOrderColumn, getReferenceClass, getReferenceDatabaseTable, getTemporal, hasEnumerated, hasMapKey, hasTemporal, initXMLObject, isCollectionAccessor, isDeleteAll, process, processAssociationOverride, processEISOneToManyMapping, setDeleteAll, setMapKey, setMapKeyAssociationOverrides, setMapKeyAttributeOverrides, setMapKeyClass, setMapKeyClassName, setMapKeyColumn, setMapKeyConverts, setMapKeyEnumerated, setMapKeyForeignKey, setMapKeyJoinColumns, setMapKeyTemporal, setOrderBy, setOrderColumn, setTemporal
-
Methods inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.RelationshipAccessor
addJoinTableRelationKeyFields, getBatchFetch, getCascade, getCascadeOnDelete, getFetch, getForeignKey, getJoinColumns, getJoinFetch, getJoinFields, getJoinTable, getJoinTableMetadata, getMappedBy, getNonCacheable, getOrphanRemoval, getOwningMapping, getPrivateOwned, getReferenceDescriptor, getTargetEntity, getTargetEntityName, hasJoinTable, hasMappedBy, isCascadeOnDelete, isLazy, isNonCacheable, isOrphanRemoval, isValueHolderInterface, processBatchFetch, processCascadeTypes, processJoinTable, processMappedByRelationTable, processOrphanRemoval, processRelationshipMapping, setAccessorMethods, setBatchFetch, setCascade, setCascadeOnDelete, setFetch, setForeignKey, setJoinColumns, setJoinFetch, setJoinFields, setJoinTable, setMappedBy, setNonCacheable, setOrphanRemoval, setPrivateOwned, setTargetEntity, setTargetEntityName, usesIndirection
-
Methods inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.mappings.MappingAccessor
addConvert, addConvertMetadata, addFieldNameTranslation, derivesId, getAnnotation, getAssociationOverrides, getAttributeName, getAttributeOverride, getAttributeOverrides, getAttributeType, getClassAccessor, getConverts, getDatabaseField, getField, getForeignKey, getGetMethodName, getJoinColumns, getJoinColumnsAndValidate, getLob, getMapKeyConverts, getMapKeyReferenceClass, getMapKeyReferenceClassName, getMapKeyReferenceClassWithGenerics, getMapping, getOwningDescriptor, getOwningDescriptors, getRawClass, getRawClassWithGenerics, getReferenceAccessors, getReferenceClassFromGeneric, getReferenceClassName, getReferenceClassWithGenerics, getSetMethodName, hasAttributeOverride, hasAttributeType, hasLob, hasReturnInsert, hasReturnUpdate, initXMLMappingAccessor, isAnnotationPresent, isBasic, isBasicCollection, isBasicMap, isDerivedIdClass, isDirectCollection, isDirectEmbeddableCollection, isEmbedded, isEmbeddedId, isEnumerated, isId, isJson, isLob, isManyToOne, isMapAccessor, isMappedKeyMapAccessor, isMultitenantId, isOneToMany, isOneToOne, isPrimitiveWrapperClass, isProcessed, isRelationship, isSerialized, isTemporal, isTimeClass, isTransient, isUUID, isValidJsonType, isValidSerializedType, isVariableOneToOne, processAssociationOverrides, processAttributeOverrides, processContainerPolicyAndIndirection, processConvert, processConverts, processDirectMapKeyClass, processEmbeddableMapKeyClass, processEntityMapKeyClass, processEnumerated, processForeignKeyRelationship, processIndirection, processJoinFetch, processJson, processLob, processMapKeyClass, processMappingConverter, processMappingKeyConverter, processMappingValueConverter, processProperties, processProperty, processReturnInsert, processReturnInsertAndUpdate, processReturnUpdate, processSerialized, processSerialized, processTemporal, processUUID, setAttributeType, setClassAccessor, setField, setIndirectionPolicy, setMapping, setOverrideMapping, toString, updatePrimaryKeyField, usesFieldAccess, usesPropertyAccess, usesVirtualAccess
-
Methods inherited from class org.eclipse.persistence.internal.jpa.metadata.accessors.MetadataAccessor
getAccess, getAccessibleObject, getAccessMethods, getAnnotatedElement, getAnnotatedElementName, getAnnotation, getConverters, getDefaultAttributeName, getDescriptor, getDescriptorJavaClass, getHashPartitioning, getIdentifier, getJavaClass, getJavaClassName, getName, getObjectTypeConverters, getPartitioned, getPartitioning, getPinnedPartitioning, getProperties, getRangePartitioning, getReferencedField, getReferencedField, getReplicationPartitioning, getRoundRobinPartitioning, getSerializedConverters, getStructConverters, getTypeConverters, getUnionPartitioning, getUpperCaseShortJavaClassName, getValue, getValue, getValuePartitioning, hasAccess, hasAccessMethods, initAccess, initXMLAccessor, isAnnotationPresent, merge, processConverters, processCustomConverters, processObjectTypeConverters, processPartitioned, processPartitioning, processPrimaryKeyJoinColumns, processSerializedConverters, processStructConverters, processTable, processTypeConverters, setAccess, setAccessMethods, setConverters, setDescriptor, setHashPartitioning, setName, setObjectTypeConverters, setPartitioned, setPartitioning, setPinnedPartitioning, setProperties, setRangePartitioning, setReplicationPartitioning, setRoundRobinPartitioning, setSerializedConverters, setStructConverters, setTypeConverters, setUnionPartitioning, setValuePartitioning
-
Methods inherited from class org.eclipse.persistence.internal.jpa.metadata.ORMetadata
getAccessibleObjectName, getAnnotation, getBoxedType, getDatabaseTypeEnum, getEntityMappings, getFullyQualifiedClassName, getJavaClass, getJavaClassName, getLoader, getLocation, getLogger, getMetadataClass, getMetadataClass, getMetadataClass, getMetadataFactory, getName, getPrimitiveClassForName, getProject, getText, getXMLElement, hasIdentifier, hasText, initXMLClassName, initXMLObject, initXMLObjects, initXMLTextObject, loadedFromAnnotation, loadedFromEclipseLinkXML, loadedFromXML, mergeORObjectLists, mergeORObjects, mergeSimpleObjects, reloadEntity, reloadMappedSuperclass, setAccessibleObject, setEntityMappings, setFieldName, setFieldName, setProject, shouldOverride, valuesMatch, valuesMatch
-
-
-
-
Constructor Detail
-
ManyToManyAccessor
public ManyToManyAccessor()
INTERNAL: Used for OX mapping.
-
ManyToManyAccessor
public ManyToManyAccessor(MetadataAnnotation manyToMany, MetadataAnnotatedElement annotatedElement, ClassAccessor classAccessor)
INTERNAL:
-
-
Method Detail
-
equals
public boolean equals(Object objectToCompare)
INTERNAL:- Overrides:
equalsin classCollectionAccessor
-
hashCode
public int hashCode()
- Overrides:
hashCodein classCollectionAccessor
-
getDefaultTableForEntityMapKey
protected DatabaseTable getDefaultTableForEntityMapKey()
INTERNAL: Return the default table to hold the foreign key of a MapKey when and Entity is used as the MapKey- Overrides:
getDefaultTableForEntityMapKeyin classRelationshipAccessor
-
getLoggingContext
protected String getLoggingContext()
INTERNAL: Return the logging context for this accessor.- Specified by:
getLoggingContextin classRelationshipAccessor
-
isManyToMany
public boolean isManyToMany()
INTERNAL:- Overrides:
isManyToManyin classMappingAccessor
-
isPrivateOwned
public boolean isPrivateOwned()
INTERNAL: A PrivateOwned setting on a ManyToMany is ignored. A log warning is issued.- Overrides:
isPrivateOwnedin classRelationshipAccessor
-
process
public void process()
INTERNAL: Process a many to many metadata accessor into a EclipseLink ManyToManyMapping.- Overrides:
processin classCollectionAccessor
-
-