protected void adjustForCommit() { for (InternalCDOPackageUnit newPackageUnit : newPackageUnits) { newPackageUnit.setTimeStamp(timeStamp); } for (InternalCDORevision newObject : newObjects) { newObject.adjustForCommit(branch, timeStamp); } }
public void adjustForCommit(CDOBranch branch, long timeStamp) { getDelegate().adjustForCommit(branch, timeStamp); }
/** * @since 2.0 */ protected void writeRevisionDelta(InternalCDORevisionDelta revisionDelta, CDOBranch branch, long created) { CDOID id = revisionDelta.getID(); CDOBranchVersion version = revisionDelta.getBranch().getVersion(revisionDelta.getVersion()); InternalCDORevision revision = getStore().getRevisionByVersion(id, version); if (revision.getVersion() != revisionDelta.getVersion()) { throw new ConcurrentModificationException("Trying to update object " + id //$NON-NLS-1$ + " that was already modified"); //$NON-NLS-1$ } InternalCDORevision newRevision = revision.copy(); newRevision.adjustForCommit(branch, created); revisionDelta.apply(newRevision); writeRevision(newRevision); }
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); } }
private void doCopyOnBranch(IDBStoreAccessor accessor, InternalCDORevisionDelta delta, long created, OMMonitor monitor) { monitor.begin(2); try { InternalRepository repository = (InternalRepository)accessor.getStore().getRepository(); InternalCDORevision oldRevision = (InternalCDORevision)accessor.getTransaction().getRevision(delta.getID()); if (oldRevision == null) { throw new IllegalStateException("Origin revision not found for " + delta); } // Make sure all chunks are loaded repository.ensureChunks(oldRevision, CDORevision.UNCHUNKED); InternalCDORevision newRevision = oldRevision.copy(); newRevision.adjustForCommit(accessor.getTransaction().getBranch(), created); delta.apply(newRevision); monitor.worked(); writeRevision(accessor, newRevision, false, true, monitor.fork()); } finally { monitor.done(); } } }
private Pair<InternalCDORevision, InternalCDORevision> createNewRevision(CDORevisionKey potentialDelta, CDOCommitInfo commitInfo) { if (potentialDelta instanceof CDORevisionDelta) { CDORevisionDelta delta = (CDORevisionDelta)potentialDelta; CDOID id = delta.getID(); InternalCDORevisionManager revisionManager = getRevisionManager(); InternalCDORevision oldRevision = revisionManager.getRevisionByVersion(id, potentialDelta, CDORevision.UNCHUNKED, false); if (oldRevision != null) { InternalCDORevision newRevision = oldRevision.copy(); newRevision.adjustForCommit(commitInfo.getBranch(), commitInfo.getTimeStamp()); CDORevisable target = delta.getTarget(); if (target != null) { newRevision.setVersion(target.getVersion()); } delta.apply(newRevision); newRevision.freeze(); return new Pair<InternalCDORevision, InternalCDORevision>(oldRevision, newRevision); } } return null; }
newRevision.adjustForCommit(branch, timeStamp);
public void process(IDBStoreAccessor accessor, InternalCDORevisionDelta delta, long created) { this.accessor = accessor; this.created = created; id = delta.getID(); oldVersion = delta.getVersion(); if (TRACER.isEnabled()) { TRACER.format("FeatureDeltaWriter: old version: {0}, new version: {1}", oldVersion, oldVersion + 1); //$NON-NLS-1$ } InternalCDORevision originalRevision = (InternalCDORevision)accessor.getTransaction().getRevision(id); newRevision = originalRevision.copy(); targetBranch = accessor.getTransaction().getBranch(); newRevision.adjustForCommit(targetBranch, created); newVersion = newRevision.getVersion(); // process revision delta tree delta.accept(this); if (newVersion != CDORevision.FIRST_VERSION) { reviseOldRevision(accessor, id, delta.getBranch(), newRevision.getTimeStamp() - 1); } writeValues(accessor, newRevision); }
newRevision.adjustForCommit(commitInfo.getBranch(), commitInfo.getTimeStamp());