Purpose: This mapping is used to store a collection of simple types (String, Number, Date, etc.) into a single table. The table must store the value and a foreign key to the source object. A converter can be used if the desired object type and the data type do not match.
Converter, ObjectTypeConverter, TypeConversionConverter, SerializedObjectConverter
| Modifier and Type | Field and Description |
|---|---|
| protected transient Class | |
| protected String | |
| protected transient ModifyQuery | |
| protected ModifyQuery | changeSetDeleteQuery
Used for deletion when ChangeSets are used |
| protected static final String | Delete
Used for data modification events. |
| protected static final String | |
| protected static final String | |
| protected ModifyQuery | deleteAtIndexQuery
Used (only in case listOrderField != null) to delete object with particular orderFieldValue |
| protected DatabaseField | directField
The direct field name is converted and stored |
| protected boolean | |
| protected boolean | |
| protected boolean | |
| protected boolean | |
| protected HistoryPolicy | |
| protected static final String | |
| protected DataModifyQuery | insertQuery
Used for insertion for m-m and dc, not used in 1-m. |
| protected List | |
| protected Vector | |
| protected DatabaseTable | referenceTable
Stores the reference table |
| protected Vector | |
| protected static final String | |
| protected ModifyQuery | updateAtIndexQuery
Used (only in case listOrderField != null) to update orderFieldValue of object with particular orderFieldValue |
| protected Converter | valueConverter
Allows user defined conversion between the object value and the database value. |
| protected String |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | |
| public void | |
| public void | addOrdering(Expression expression)
ADVANCED: Used this method to add custom ordering expressions when fetching the collection. |
| public void | addReferenceKeyField(DatabaseField referenceForeignKeyField, DatabaseField sourcePrimaryKeyField)
PUBLIC: Add the reference key field. |
| public void | addReferenceKeyFieldName(String referenceForeignKeyFieldName, String sourcePrimaryKeyFieldName)
PUBLIC: Add the name of the reference key field. |
| protected Expression | buildBatchCriteria(ExpressionBuilder builder, ObjectLevelReadQuery query)
Overrides org. |
| public void | buildCopy(Object
TODO copy, Object TODO original, CopyGroup TODO group)Overrides org. |
| public Object | buildElementClone(Object element, Object parent, CacheKey parentCacheKey, Integer refreshCascade, AbstractSession cloningSession, boolean isExisting, boolean isFromSharedCache)
Overrides org. |
| public Expression | buildExpression(Object
TODO queryObject, QueryByExamplePolicy TODO policy, Expression TODO expressionBuilder, Map<K, V> TODO processedObjects, AbstractSession TODO session)Overrides org. |
| protected void | buildListOrderField()
Overrides org. |
| public void | calculateDeferredChanges(ChangeRecord
TODO changeRecord, AbstractSession TODO session)Overrides org. |
| public void | cascadeDiscoverAndPersistUnregisteredNewObjects(Object
TODO object, Map<K, V> TODO newObjects, Map<K, V> TODO unregisteredExistingObjects, Map<K, V> TODO visitedObjects, UnitOfWorkImpl TODO uow, Set<E> TODO cascadeErrors)Overrides org. |
| public void | cascadePerformRemoveIfRequired(Object
TODO object, UnitOfWorkImpl TODO uow, Map<K, V> TODO visitedObjects)Overrides org. |
| public void | cascadePerformRemovePrivateOwnedObjectFromChangeSetIfRequired(Object
TODO object, UnitOfWorkImpl TODO uow, Map<K, V> TODO visitedObjects)
INTERNAL:
Cascade perform removal of orphaned private owned objects from the UnitOfWorkChangeSet
|
| public void | cascadeRegisterNewIfRequired(Object
TODO object, UnitOfWorkImpl TODO uow, Map<K, V> TODO visitedObjects)Overrides org. |
| public Object | clone()
Overrides org. |
| public void | collectQueryParameters(Set<DatabaseField>
TODO cacheFields)Overrides org. |
| public void | compareCollectionsForChange(Object oldCollection, Object newCollection, ChangeRecord changeRecord, AbstractSession session)
Overrides org. |
| public ChangeRecord | compareForChange(Object
TODO clone, Object TODO backUp, ObjectChangeSet TODO owner, AbstractSession TODO session)Overrides org. |
| protected boolean | |
| public void | compareListsForChange(List<E> oldList, List<E> newList, ChangeRecord changeRecord, AbstractSession session)
INTERNAL: This method is used to calculate the differences between two Lists. |
| public boolean | compareObjects(Object
TODO firstObject, Object TODO secondObject, AbstractSession TODO session)Overrides org. |
| public void | convertClassNamesToClasses(ClassLoader
TODO classLoader)Overrides org. |
| protected Expression | |
| protected Expression | |
| protected void | executeBatchQuery(DatabaseQuery query, CacheKey parentCacheKey, Map<K, V> referenceDataByKey, AbstractSession session, AbstractRecord translationRow)
Overrides org. |
| protected Object | extractBatchKeyFromRow(AbstractRecord row, AbstractSession session)
Overrides org. |
| protected Object | extractKeyFromTargetRow(AbstractRecord row, AbstractSession session)
Overrides org. |
| public void | fixRealObjectReferences(Object
TODO object, Map<Object, ObjectDescriptor> TODO objectInformation, Map<Object, Object> TODO processedObjects, ObjectLevelReadQuery TODO query, DistributedSession TODO session)Overrides org. |
| protected Expression | getAdditionalFieldsBaseExpression(ReadQuery query)
Overrides org. |
| public Class | getAttributeClassification()
Overrides org. |
| public String | |
| protected ModifyQuery | |
| protected ModifyQuery | |
| protected ModifyQuery | |
| public DatabaseField | |
| public String | |
| public Vector | getFieldsForTranslationInAggregate()
Overrides org. |
| public Object | getFieldValue(Object attributeValue, AbstractSession session)
INTERNAL: Convert the attribute value to a field value. |
| public HistoryPolicy | |
| protected DataModifyQuery | |
| public Expression | getJoinCriteria(ObjectExpression context, Expression base)
Overrides org. |
| public Object | getObjectCorrespondingTo(Object
TODO object, DistributedSession TODO session, Map<Object, ObjectDescriptor> TODO objectDescriptors, Map<Object, Object> TODO processedObjects, ObjectLevelReadQuery TODO query)Overrides org. |
| public Object | getObjectValue(Object fieldValue, AbstractSession session)
INTERNAL: Convert the field value to an attribute value. |
| public List | |
| public List | getOrderByNormalizedExpressions(Expression base)
Overrides org. |
| public Class | getReferenceClass()
Overrides org. |
| public String | getReferenceClassName()
Overrides org. |
| public ClassDescriptor | getReferenceDescriptor()
Overrides org. |
| public Vector | getReferenceKeyFieldNames()
INTERNAL: Return the reference key field names associated with the mapping. |
| public Vector | |
| public DatabaseTable | |
| public String | |
| public String | |
| public DatabaseMapping | getRelationshipPartner()
Overrides org. |
| public Vector | getSelectFields()
Overrides org. |
| protected ContainerPolicy | getSelectionQueryContainerPolicy()
Overrides org. |
| public Vector | getSelectTables()
Overrides org. |
| public Vector | |
| public Vector | |
| protected ModifyQuery | |
| public Converter | |
| protected boolean | |
| protected boolean | |
| protected boolean | |
| protected boolean | |
| public boolean | hasNestedIdentityReference()
Overrides org. |
| public void | initialize(AbstractSession session)
Overrides org. |
| protected void | |
| protected void | |
| protected void | |
| protected void | |
| protected void | initializeDirectField(AbstractSession session)
The field name on the reference table is initialized and cached. |
| protected void | |
| protected void | initializeListOrderField(AbstractSession session)
Overrides org. |
| protected void | initializeReferenceDescriptor(AbstractSession session)
Overrides org. |
| protected void | initializeReferenceKeys(AbstractSession session)
The reference keys on the reference table are initialized |
| protected void | initializeReferenceTable(AbstractSession session)
Set the table qualifier on the reference table if required |
| protected void | |
| protected void | initializeSelectionQuery(AbstractSession session)
Overrides org. |
| protected void | |
| protected void | |
| protected void | initializeSourceKeysWithDefaults(AbstractSession session)
INTERNAL: If a user does not specify the source key then the primary keys of the source table are used. |
| protected void | |
| protected void | |
| public boolean | isCandidateForPrivateOwnedRemoval()
Overrides org. |
| public boolean | isCascadedLockingSupported()
Overrides org. |
| public boolean | |
| public boolean | |
| public boolean | isJoiningSupported()
Overrides org. |
| protected boolean | isKeyForSourceSpecified()
INTERNAL: Checks if source and target keys are mentioned by the user or not. |
| public boolean | isLockableMapping()
Overrides org. |
| public boolean | |
| public boolean | isRelationalMapping()
Overrides org. |
| public void | iterateOnElement(DescriptorIterator iterator, Object element)
Overrides org. |
| public void | iterateOnRealAttributeValue(DescriptorIterator iterator, Object realAttributeValue)
Overrides org. |
| protected void | mergeAddRemoveChanges(Object valueOfTarget, Object delegateTarget, DirectCollectionChangeRecord changeRecord, MergeManager mergeManager, AbstractSession session)
INTERNAL: Merge changes by adding and removing from the change record to the target object, and its delegate object if instance of IndirectCollection. |
| public void | mergeChangesIntoObject(Object target, ChangeRecord changeRecord, Object source, MergeManager mergeManager, AbstractSession targetSession)
Overrides org. |
| public void | mergeIntoObject(Object target, boolean isTargetUnInitialized, Object source, MergeManager mergeManager, AbstractSession targetSession)
Overrides org. |
| public void | performDataModificationEvent(Object[] event, AbstractSession session)
Overrides org. |
| public void | postCalculateChanges(ChangeRecord changeRecord, UnitOfWorkImpl uow)
Overrides org. |
| public void | postInsert(WriteObjectQuery query)
Overrides org. |
| public void | postUpdate(WriteObjectQuery writeQuery)
Overrides org. |
| protected void | |
| protected void | |
| public void | preDelete(DeleteObjectQuery query)
Overrides org. |
| public ReadQuery | prepareNestedBatchQuery(ObjectLevelReadQuery query)
Overrides org. |
| public ObjectLevelReadQuery | prepareNestedJoins(JoinedAttributeManager joinManager, ObjectBuildingQuery baseQuery, AbstractSession session)
Overrides org. |
| protected void | prepareTranslationRow(AbstractRecord translationRow, Object object, ClassDescriptor descriptor, AbstractSession session)
Overrides org. |
| public void | recordPrivateOwnedRemovals(Object object, UnitOfWorkImpl uow)
Overrides org. |
| public void | remoteInitialization(DistributedSession session)
Overrides org. |
| public Map | replaceValueHoldersIn(Object object, RemoteSessionController controller)
Overrides org. |
| public void | setAttributeClassification(Class<?> attributeClassification)
PUBLIC: Some databases do not properly support all of the base data types. |
| public void | setAttributeClassificationName(String attributeClassificationName)
INTERNAL: Set the name of the class for MW usage. |
| public void | setContainerPolicy(ContainerPolicy containerPolicy)
Overrides org. Implements org. |
| public void | setCustomDeleteAtIndexQuery(ModifyQuery query)
PUBLIC: The default delete by index query for this mapping can be overridden by specifying the new query. |
| public void | setCustomDeleteQuery(ModifyQuery query)
PUBLIC: The default delete query for this mapping can be overridden by specifying the new query. |
| public void | setCustomInsertQuery(DataModifyQuery query)
PUBLIC: The default insert query for mapping can be overridden by specifying the new query. |
| public void | setCustomUpdateAtIndexQuery(ModifyQuery query)
PUBLIC: The default delete by index query for this mapping can be overridden by specifying the new query. |
| protected void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| protected void | |
| protected void | |
| public void | |
| protected void | |
| public void | |
| public void | setReferenceClass(Class<?> referenceClass)
Overrides org. |
| public void | setReferenceClassName(String referenceClassName)
Overrides org. |
| public void | |
| public void | setReferenceKeyFieldNames(Vector<E> fieldNames)
INTERNAL: Set the reference key field names associated with the mapping. |
| public void | |
| public void | |
| public void | |
| public void | setSelectionCriteria(Expression anExpression)
Overrides org. |
| protected void | setSelectionQueryContainerPolicy(ContainerPolicy containerPolicy)
Overrides org. |
| public void | setSessionName(String name)
Overrides org. |
| public void | setSourceKeyFieldNames(Vector<E> fieldNames)
INTERNAL: Set the source key field names associated with the mapping. |
| public void | |
| public void | |
| public void | setValueConverterClassName(String valueConverterClassName)
PUBLIC: Set the converter class name on the mapping. |
| public boolean | shouldUseListOrderFieldTableExpression()
Overrides org. |
| public void | simpleAddToCollectionChangeRecord(Object referenceKey, Object objectToAdd, ObjectChangeSet changeSet, AbstractSession session)
Overrides org. |
| protected void | simpleAddToCollectionChangeRecord(Object objectToAdd, Integer index, boolean isSet, ObjectChangeSet changeSet, AbstractSession session, boolean isChangeApplied)
|
| public void | simpleRemoveFromCollectionChangeRecord(Object referenceKey, Object objectToRemove, ObjectChangeSet changeSet, AbstractSession session)
Overrides org. |
| protected void | simpleRemoveFromCollectionChangeRecord(Object objectToRemove, Integer index, boolean isSet, ObjectChangeSet changeSet, AbstractSession session, boolean isChangeApplied)
|
| public void | updateChangeRecord(Object clone, Object newValue, Object oldValue, ObjectChangeSet objectChangeSet, UnitOfWorkImpl uow)
Overrides org. |
| public void | updateCollectionChangeRecord(CollectionChangeEvent event, ObjectChangeSet changeSet, UnitOfWorkImpl uow)
Overrides org. |
| public void | useMapClass(Class<?> concreteClass, String methodName)
Overrides org. Implements org. |
| public Object | valueFromRow(AbstractRecord row, JoinedAttributeManager joinManager, ObjectBuildingQuery sourceQuery, CacheKey cacheKey, AbstractSession session, boolean isTargetProtected, Boolean[] wasCacheUsed)
Overrides org. |
| protected Object | valueFromRowInternalWithJoin(AbstractRecord row, JoinedAttributeManager joinManager, ObjectBuildingQuery sourceQuery, CacheKey parentCacheKey, AbstractSession executionSession, boolean isTargetProtected)
Overrides org. |
| public boolean | verifyDelete(Object object, AbstractSession session)
Overrides org. |