Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle TopLink
11g Release 1 (11.1.1)

E28847-01


org.eclipse.persistence.eis.mappings
Class EISOneToManyMappingHelper

java.lang.Object
  extended by org.eclipse.persistence.eis.mappings.EISOneToManyMappingHelper


public class EISOneToManyMappingHelper
extends java.lang.Object

INTERNAL: Helper class to consolidate all the heinous comparing and merging code for the EIS one to many mappings.


Field Summary
private  EISOneToManyMapping mapping
          The mapping that needs help comparing and merging.
private static java.lang.Object XXX
           

 

Constructor Summary
EISOneToManyMappingHelper(EISOneToManyMapping mapping)
          Constructor.

 

Method Summary
private  java.lang.Object buildAddedElementFromChangeSet(java.lang.Object changeSet, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          Convenience method.
private  java.lang.Object buildChangeSet(java.lang.Object element, org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Convenience method.
private  java.lang.Object buildElementFromElement(java.lang.Object element, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          Convenience method.
private  java.lang.Object buildRemovedElementFromChangeSet(java.lang.Object changeSet, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          Convenience method.
private  boolean compareAttributeValues(java.lang.Object collection1, java.lang.Object collection2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Compare the attributes.
private  org.eclipse.persistence.internal.sessions.ChangeRecord compareAttributeValuesForChangeWithOrder(java.lang.Object cloneCollection, java.lang.Object backupCollection, org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Build and return the change record that results from comparing the two collection attributes.
private  org.eclipse.persistence.internal.sessions.ChangeRecord compareAttributeValuesForChangeWithoutOrder(java.lang.Object cloneCollection, java.lang.Object backupCollection, org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Build and return the change record that results from comparing the two collection attributes.
private  boolean compareAttributeValuesWithOrder(java.lang.Object collection1, java.lang.Object collection2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Compare the attributes.
private  boolean compareAttributeValuesWithoutOrder(java.lang.Object collection1, java.lang.Object collection2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Compare the attributes.
private  boolean compareElements(java.lang.Object element1, java.lang.Object element2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Convenience method.
private  boolean compareElementsForChange(java.lang.Object element1, java.lang.Object element2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Convenience method.
 org.eclipse.persistence.internal.sessions.ChangeRecord compareForChange(java.lang.Object clone, java.lang.Object backup, org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Build and return the change record that results from comparing the two collection attributes.
 boolean compareObjects(java.lang.Object object1, java.lang.Object object2, org.eclipse.persistence.internal.sessions.AbstractSession session)
          INTERNAL: Compare the attributes belonging to this mapping for the objects.
private  java.lang.String getAttributeName()
          Convenience method.
private  org.eclipse.persistence.internal.queries.ContainerPolicy getContainerPolicy()
          Convenience method.
 DatabaseMapping getDatabaseMapping()
          INTERNAL: Return the mapping, casted a bit more generally.
 EISOneToManyMapping getMapping()
          INTERNAL: Return the mapping.
private  java.lang.Object getRealCollectionAttributeValueFromObject(java.lang.Object object, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Convenience method.
private  boolean mapKeyHasChanged(java.lang.Object element, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Convenience method.
 void mergeChangesIntoObject(java.lang.Object target, org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord, java.lang.Object source, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          INTERNAL: Merge changes from the source to the target object.
private  void mergeChangesIntoObjectWithOrder(java.lang.Object target, org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord, java.lang.Object source, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          Merge changes from the source to the target object.
private  void mergeChangesIntoObjectWithoutOrder(java.lang.Object target, org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord, java.lang.Object source, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          Merge changes from the source to the target object.
 void mergeIntoObject(java.lang.Object target, boolean isTargetUnInitialized, java.lang.Object source, org.eclipse.persistence.internal.sessions.MergeManager mergeManager, org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
          INTERNAL: Merge changes from the source to the target object.
private  void setRealAttributeValueInObject(java.lang.Object object, java.lang.Object attributeValue)
          Convenience method.
 void simpleAddToCollectionChangeRecord(java.lang.Object referenceKey, java.lang.Object changeSetToAdd, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          ADVANCED: This method is used to add an object to a collection once the changeSet is applied.
private  void simpleAddToCollectionChangeRecordWithOrder(java.lang.Object referenceKey, java.lang.Object changeSetToAdd, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Add stuff to an ordered collection.
private  void simpleAddToCollectionChangeRecordWithoutOrder(java.lang.Object referenceKey, java.lang.Object changeSetToAdd, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Add stuff to an unordered collection.
 void simpleRemoveFromCollectionChangeRecord(java.lang.Object referenceKey, java.lang.Object changeSetToRemove, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          ADVANCED: This method is used to remove an object from a collection once the changeSet is applied.
private  void simpleRemoveFromCollectionChangeRecordWithOrder(java.lang.Object referenceKey, java.lang.Object changeSetToRemove, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Remove stuff from an ordered collection.
private  void simpleRemoveFromCollectionChangeRecordWithoutOrder(java.lang.Object referenceKey, java.lang.Object changeSetToRemove, org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet, org.eclipse.persistence.internal.sessions.AbstractSession session)
          Remove stuff from an unordered collection.

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Field Detail

mapping

private EISOneToManyMapping mapping
The mapping that needs help comparing and merging.

XXX

private static java.lang.Object XXX

Constructor Detail

EISOneToManyMappingHelper

public EISOneToManyMappingHelper(EISOneToManyMapping mapping)
Constructor.

Method Detail

buildAddedElementFromChangeSet

private java.lang.Object buildAddedElementFromChangeSet(java.lang.Object changeSet,
                                                        org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                                        org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
Convenience method.

buildChangeSet

private java.lang.Object buildChangeSet(java.lang.Object element,
                                        org.eclipse.persistence.internal.sessions.ObjectChangeSet owner,
                                        org.eclipse.persistence.internal.sessions.AbstractSession session)
Convenience method.

buildElementFromElement

private java.lang.Object buildElementFromElement(java.lang.Object element,
                                                 org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                                 org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
Convenience method.

buildRemovedElementFromChangeSet

private java.lang.Object buildRemovedElementFromChangeSet(java.lang.Object changeSet,
                                                          org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                                          org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
Convenience method.

compareAttributeValues

private boolean compareAttributeValues(java.lang.Object collection1,
                                       java.lang.Object collection2,
                                       org.eclipse.persistence.internal.sessions.AbstractSession session)
Compare the attributes. Return true if they are alike. Assume the passed-in attributes are non-null.

compareAttributeValuesForChangeWithOrder

private org.eclipse.persistence.internal.sessions.ChangeRecord compareAttributeValuesForChangeWithOrder(java.lang.Object cloneCollection,
                                                                                                        java.lang.Object backupCollection,
                                                                                                        org.eclipse.persistence.internal.sessions.ObjectChangeSet owner,
                                                                                                        org.eclipse.persistence.internal.sessions.AbstractSession session)
Build and return the change record that results from comparing the two collection attributes. The order of the elements is significant.

compareAttributeValuesForChangeWithoutOrder

private org.eclipse.persistence.internal.sessions.ChangeRecord compareAttributeValuesForChangeWithoutOrder(java.lang.Object cloneCollection,
                                                                                                           java.lang.Object backupCollection,
                                                                                                           org.eclipse.persistence.internal.sessions.ObjectChangeSet owner,
                                                                                                           org.eclipse.persistence.internal.sessions.AbstractSession session)
Build and return the change record that results from comparing the two collection attributes. Ignore the order of the elements.

compareAttributeValuesWithOrder

private boolean compareAttributeValuesWithOrder(java.lang.Object collection1,
                                                java.lang.Object collection2,
                                                org.eclipse.persistence.internal.sessions.AbstractSession session)
Compare the attributes. Return true if they are alike. The order of the elements is significant.

compareAttributeValuesWithoutOrder

private boolean compareAttributeValuesWithoutOrder(java.lang.Object collection1,
                                                   java.lang.Object collection2,
                                                   org.eclipse.persistence.internal.sessions.AbstractSession session)
Compare the attributes. Return true if they are alike. Ignore the order of the elements.

compareElements

private boolean compareElements(java.lang.Object element1,
                                java.lang.Object element2,
                                org.eclipse.persistence.internal.sessions.AbstractSession session)
Convenience method. Check for null values before delegating to the mapping.

compareElementsForChange

private boolean compareElementsForChange(java.lang.Object element1,
                                         java.lang.Object element2,
                                         org.eclipse.persistence.internal.sessions.AbstractSession session)
Convenience method. Check for null values before delegating to the mapping.

compareForChange

public org.eclipse.persistence.internal.sessions.ChangeRecord compareForChange(java.lang.Object clone,
                                                                               java.lang.Object backup,
                                                                               org.eclipse.persistence.internal.sessions.ObjectChangeSet owner,
                                                                               org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Build and return the change record that results from comparing the two collection attributes.

compareObjects

public boolean compareObjects(java.lang.Object object1,
                              java.lang.Object object2,
                              org.eclipse.persistence.internal.sessions.AbstractSession session)
INTERNAL: Compare the attributes belonging to this mapping for the objects.

getAttributeName

private java.lang.String getAttributeName()
Convenience method.

getContainerPolicy

private org.eclipse.persistence.internal.queries.ContainerPolicy getContainerPolicy()
Convenience method.

getDatabaseMapping

public DatabaseMapping getDatabaseMapping()
INTERNAL: Return the mapping, casted a bit more generally.

getMapping

public EISOneToManyMapping getMapping()
INTERNAL: Return the mapping.

getRealCollectionAttributeValueFromObject

private java.lang.Object getRealCollectionAttributeValueFromObject(java.lang.Object object,
                                                                   org.eclipse.persistence.internal.sessions.AbstractSession session)
Convenience method.

mapKeyHasChanged

private boolean mapKeyHasChanged(java.lang.Object element,
                                 org.eclipse.persistence.internal.sessions.AbstractSession session)
Convenience method.

mergeChangesIntoObject

public void mergeChangesIntoObject(java.lang.Object target,
                                   org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord,
                                   java.lang.Object source,
                                   org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                   org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
INTERNAL: Merge changes from the source to the target object.

mergeChangesIntoObjectWithOrder

private void mergeChangesIntoObjectWithOrder(java.lang.Object target,
                                             org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord,
                                             java.lang.Object source,
                                             org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                             org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
Merge changes from the source to the target object. Simply replace the entire target collection.

mergeChangesIntoObjectWithoutOrder

private void mergeChangesIntoObjectWithoutOrder(java.lang.Object target,
                                                org.eclipse.persistence.internal.sessions.ChangeRecord changeRecord,
                                                java.lang.Object source,
                                                org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                                                org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
Merge changes from the source to the target object. Make the necessary removals and adds and map key modifications.

mergeIntoObject

public void mergeIntoObject(java.lang.Object target,
                            boolean isTargetUnInitialized,
                            java.lang.Object source,
                            org.eclipse.persistence.internal.sessions.MergeManager mergeManager,
                            org.eclipse.persistence.internal.sessions.AbstractSession targetSession)
INTERNAL: Merge changes from the source to the target object. Simply replace the entire target collection.

setRealAttributeValueInObject

private void setRealAttributeValueInObject(java.lang.Object object,
                                           java.lang.Object attributeValue)
Convenience method.

simpleAddToCollectionChangeRecord

public void simpleAddToCollectionChangeRecord(java.lang.Object referenceKey,
                                              java.lang.Object changeSetToAdd,
                                              org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                              org.eclipse.persistence.internal.sessions.AbstractSession session)
ADVANCED: This method is used to add an object to a collection once the changeSet is applied. The referenceKey parameter should only be used for direct Maps.

simpleAddToCollectionChangeRecordWithOrder

private void simpleAddToCollectionChangeRecordWithOrder(java.lang.Object referenceKey,
                                                        java.lang.Object changeSetToAdd,
                                                        org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                                        org.eclipse.persistence.internal.sessions.AbstractSession session)
Add stuff to an ordered collection.

simpleAddToCollectionChangeRecordWithoutOrder

private void simpleAddToCollectionChangeRecordWithoutOrder(java.lang.Object referenceKey,
                                                           java.lang.Object changeSetToAdd,
                                                           org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                                           org.eclipse.persistence.internal.sessions.AbstractSession session)
Add stuff to an unordered collection.

simpleRemoveFromCollectionChangeRecord

public void simpleRemoveFromCollectionChangeRecord(java.lang.Object referenceKey,
                                                   java.lang.Object changeSetToRemove,
                                                   org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                                   org.eclipse.persistence.internal.sessions.AbstractSession session)
ADVANCED: This method is used to remove an object from a collection once the changeSet is applied. The referenceKey parameter should only be used for direct Maps.

simpleRemoveFromCollectionChangeRecordWithOrder

private void simpleRemoveFromCollectionChangeRecordWithOrder(java.lang.Object referenceKey,
                                                             java.lang.Object changeSetToRemove,
                                                             org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                                             org.eclipse.persistence.internal.sessions.AbstractSession session)
Remove stuff from an ordered collection.

simpleRemoveFromCollectionChangeRecordWithoutOrder

private void simpleRemoveFromCollectionChangeRecordWithoutOrder(java.lang.Object referenceKey,
                                                                java.lang.Object changeSetToRemove,
                                                                org.eclipse.persistence.internal.sessions.ObjectChangeSet changeSet,
                                                                org.eclipse.persistence.internal.sessions.AbstractSession session)
Remove stuff from an unordered collection.

Skip navigation links

Copyright © 1998, 2012, Oracle. All Rights Reserved.