/** * @since 4.0 */ public boolean adjustReferences(CDOReferenceAdjuster referenceAdjuster) { return getDelegate().adjustReferences(referenceAdjuster); }
private void applyIDMappings(InternalCDORevision revision, Map<CDOID, CDOID> idMappings, CDOReferenceAdjuster idMapper) { if (revision != null) { CDOID newID = idMappings.get(revision.getID()); if (newID != null) { revision.setID(newID); } revision.adjustReferences(idMapper); } }
private void checkDirtyObjects() { final CDOID[] dirtyID = { null }; CDOReferenceAdjuster dirtyObjectChecker = new CDOReferenceAdjuster() { public Object adjustReference(Object targetID, EStructuralFeature feature, int index) { if (feature != CDOContainerFeatureDelta.CONTAINER_FEATURE) { if (detachedIDs.contains(targetID)) { result.add(new CDOIDReference((CDOID)targetID, dirtyID[0], feature, index)); } } return targetID; } }; for (InternalCDORevision dirtyObject : dirtyObjects) { dirtyID[0] = dirtyObject.getID(); dirtyObject.adjustReferences(dirtyObjectChecker); } }
newRevision.adjustReferences(revisionTargetLocker);
private void applyIDMappings(InternalCDORevision[] revisions, OMMonitor monitor) { try { monitor.begin(revisions.length); for (InternalCDORevision revision : revisions) { if (revision != null) { CDOID newID = idMappings.get(revision.getID()); if (newID != null) { revision.setID(newID); } revision.adjustReferences(idMapper); monitor.worked(); } } } finally { monitor.done(); } }
revision.adjustReferences(CDOObjectToCDOIDAdjuster.INSTANCE); InternalCDOObject object = newInstance(revision.getEClass()); object.cdoInternalSetView(this);
revision.adjustReferences(idMapper);
revision.adjustReferences(idMapper);
private void applyNewObjects(List<CDOIDAndVersion> newObjects, List<CDOIDAndVersion> result) { for (CDOIDAndVersion key : newObjects) { InternalCDORevision revision = (InternalCDORevision)key; CDOID id = revision.getID(); if (getObjectIfExists(id) == null) { // XXX (apeteri): replace actual instances with temp CDOIDs revision.adjustReferences(CDOObjectToCDOIDAdjuster.INSTANCE); InternalCDOObject object = newInstance(revision.getEClass()); object.cdoInternalSetView(this); object.cdoInternalSetRevision(revision); object.cdoInternalSetID(id); object.cdoInternalSetState(CDOState.NEW); object.cdoInternalPostLoad(); registerObject(object); registerAttached(object, true); result.add(revision); dirty = true; } } }
for (InternalCDORevision revision : revisions) revision.adjustReferences(idMapper);
for (InternalCDORevision revision : revisions) revision.adjustReferences(idMapper);
revision.adjustReferences(idMapper); accessor.rawStore(revision, monitor.fork()); revision.adjustReferences(idMapper); accessor.rawStore(revision, monitor.fork());
public void execute(InternalCDOObject object, CDOState state, CDOEvent event, CommitTransactionResult data) { InternalCDOTransaction transaction = object.cdoView().toTransaction(); InternalCDORevision revision = object.cdoRevision(); Map<CDOID, CDOID> idMappings = data.getIDMappings(); // Adjust object CDOID oldID = object.cdoID(); CDOID newID = idMappings.get(oldID); if (newID != null) { revision.setID(newID); transaction.remapObject(oldID); } // Adjust revision revision.adjustForCommit(transaction.getBranch(), data.getTimeStamp()); revision.adjustReferences(data.getReferenceAdjuster()); revision.freeze(); InternalCDORevisionManager revisionManager = transaction.getSession().getRevisionManager(); revisionManager.addRevision(revision); changeState(object, CDOState.CLEAN); } }
public void execute(InternalCDOObject object, CDOState state, CDOEvent event, CommitTransactionResult data) { InternalCDOTransaction transaction = object.cdoView().toTransaction(); InternalCDORevision revision = object.cdoRevision(); Map<CDOID, CDOID> idMappings = data.getIDMappings(); // Adjust object CDOID oldID = object.cdoID(); CDOID newID = idMappings.get(oldID); if (newID != null) { object.cdoInternalSetID(newID); transaction.remapObject(oldID); revision.setID(newID); } // Adjust revision revision.adjustForCommit(transaction.getBranch(), data.getTimeStamp()); revision.adjustReferences(data.getReferenceAdjuster()); revision.freeze(); InternalCDORevisionManager revisionManager = transaction.getSession().getRevisionManager(); revisionManager.addRevision(revision); changeState(object, CDOState.CLEAN); } }