Class EISOrderedCollectionChangeRecord

java.lang.Object
org.eclipse.persistence.internal.sessions.ChangeRecord
org.eclipse.persistence.internal.sessions.DeferrableChangeRecord
org.eclipse.persistence.internal.sessions.CollectionChangeRecord
org.eclipse.persistence.eis.EISOrderedCollectionChangeRecord
All Implemented Interfaces:
Serializable, ChangeRecord, CollectionChangeRecord, EISOrderedCollectionChangeRecord

public class EISOrderedCollectionChangeRecord extends org.eclipse.persistence.internal.sessions.CollectionChangeRecord implements EISOrderedCollectionChangeRecord
INTERNAL: Capture the changes for an ordered collection where the entire collection is simply replaced if it has changed.
See Also:
  • Field Summary

    Fields inherited from class org.eclipse.persistence.internal.sessions.CollectionChangeRecord

    addObjectList, addOverFlow, orderedAddObjectIndices, orderedAddObjects, orderedChangeObjectList, orderedRemoveObjectIndices, orderedRemoveObjects, orderHasBeenRepaired, removeObjectList

    Fields inherited from class org.eclipse.persistence.internal.sessions.DeferrableChangeRecord

    isDeferred, latestCollection, originalCollection

    Fields inherited from class org.eclipse.persistence.internal.sessions.ChangeRecord

    attribute, mapping, owner
  • Constructor Summary

    Constructors
    Constructor
    Description
    EISOrderedCollectionChangeRecord(org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, String attributeName, DatabaseMapping mapping)
    Construct a ChangeRecord that can be used to represent the changes to an ordered collection.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addAddedChangeSet(Object changeSet, int index)
    Add an added change set.
    void
    addMovedChangeSet(Object changeSet, int oldIndex, int newIndex)
    Add an moved change set.
    void
    addRemovedChangeSet(Object changeSet, int index)
    Add an removed change set.
    int[]
    ADVANCED: Return the indexes into the new collection of the elements that were added.
    ADVANCED: Return the entries for all the elements added to the new collection.
    int[][]
    ADVANCED: Return the indexes of the elements that were simply moved within the collection.
    ADVANCED: Return the entries for all the elements that were simply shuffled within the collection.
    ADVANCED: Return the entries for all the elements in the new collection.
    int[]
    ADVANCED: Return the indexes into the old collection of the elements that were removed.
    ADVANCED: Return the entries for all the elements removed from the old collection.
    boolean
    Return whether any changes have been recorded with the change record.
    void
    Add a change set after it has been applied.
    void
    Remove a change set after it has been applied.

    Methods inherited from class org.eclipse.persistence.internal.sessions.CollectionChangeRecord

    addAdditionChange, addOrderedAdditionChange, addOrderedRemoveChange, addRemoveChange, clearChanges, getAddObjectList, getAddOverFlow, getCurrentIndexesOfOriginalObjects, getOrderedAddObjectIndex, getOrderedAddObjectIndices, getOrderedAddObjects, getOrderedChangeObjectList, getOrderedRemoveObject, getOrderedRemoveObjectIndices, getOrderedRemoveObjects, getRemoveObjectList, internalRecreateOriginalCollection, mergeRecord, orderHasBeenRepaired, setAddObjectList, setOrderedAddObjectIndices, setOrderedAddObjects, setOrderedChangeObjectList, setOrderedRemoveObjects, setOrderHasBeenRepaired, setRemoveObjectList, updateReferences

    Methods inherited from class org.eclipse.persistence.internal.sessions.DeferrableChangeRecord

    getLatestCollection, getOldValue, getOldValue, getOriginalCollection, isDeferred, recreateOriginalCollection, setIsDeferred, setLatestCollection, setOriginalCollection

    Methods inherited from class org.eclipse.persistence.internal.sessions.ChangeRecord

    getAttribute, getMapping, getOwner, prepareForSynchronization, setAttribute, setMapping, setOwner, toString, updateChangeRecordWithNewValue

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.eclipse.persistence.sessions.changesets.ChangeRecord

    getAttribute, getOldValue, getOwner
  • Constructor Details

    • EISOrderedCollectionChangeRecord

      public EISOrderedCollectionChangeRecord(org.eclipse.persistence.internal.sessions.ObjectChangeSet owner, String attributeName, DatabaseMapping mapping)
      Construct a ChangeRecord that can be used to represent the changes to an ordered collection.
  • Method Details

    • addAddedChangeSet

      public void addAddedChangeSet(Object changeSet, int index)
      Add an added change set.
    • addMovedChangeSet

      public void addMovedChangeSet(Object changeSet, int oldIndex, int newIndex)
      Add an moved change set.
    • addRemovedChangeSet

      public void addRemovedChangeSet(Object changeSet, int index)
      Add an removed change set.
    • getAddIndexes

      public int[] getAddIndexes()
      ADVANCED: Return the indexes into the new collection of the elements that were added.
      Specified by:
      getAddIndexes in interface EISOrderedCollectionChangeRecord
    • getAdds

      public List getAdds()
      ADVANCED: Return the entries for all the elements added to the new collection. The contents of this collection is determined by the mapping that populated it
      Specified by:
      getAdds in interface EISOrderedCollectionChangeRecord
    • getMoveIndexPairs

      public int[][] getMoveIndexPairs()
      ADVANCED: Return the indexes of the elements that were simply moved within the collection. Each element in the outer array is another two-element array where the first entry [0] is the index of the object in the old collection and the second entry [1] is the index of the object in the new collection. These two indexes can be equal.
      Specified by:
      getMoveIndexPairs in interface EISOrderedCollectionChangeRecord
    • getMoves

      public List getMoves()
      ADVANCED: Return the entries for all the elements that were simply shuffled within the collection. The contents of this collection is determined by the mapping that populated it
      Specified by:
      getMoves in interface EISOrderedCollectionChangeRecord
    • getNewCollection

      public List getNewCollection()
      ADVANCED: Return the entries for all the elements in the new collection. The contents of this collection is determined by the mapping that populated it
      Specified by:
      getNewCollection in interface EISOrderedCollectionChangeRecord
    • getRemoveIndexes

      public int[] getRemoveIndexes()
      ADVANCED: Return the indexes into the old collection of the elements that were removed.
      Specified by:
      getRemoveIndexes in interface EISOrderedCollectionChangeRecord
    • getRemoves

      public List getRemoves()
      ADVANCED: Return the entries for all the elements removed from the old collection. The contents of this collection is determined by the mapping that populated it
      Specified by:
      getRemoves in interface EISOrderedCollectionChangeRecord
    • hasChanges

      public boolean hasChanges()
      Return whether any changes have been recorded with the change record.
      Specified by:
      hasChanges in interface CollectionChangeRecord
      Specified by:
      hasChanges in interface EISOrderedCollectionChangeRecord
      Overrides:
      hasChanges in class org.eclipse.persistence.internal.sessions.CollectionChangeRecord
      Returns:
      boolean
    • simpleAddChangeSet

      public void simpleAddChangeSet(Object changeSet)
      Add a change set after it has been applied.
    • simpleRemoveChangeSet

      public void simpleRemoveChangeSet(Object changeSet)
      Remove a change set after it has been applied.