public CDORevisionDeltaImpl(CDORevision revision) { eClass = revision.getEClass(); id = revision.getID(); branch = revision.getBranch(); version = revision.getVersion(); }
@Override public boolean equals(Object obj) { if (obj == this) { return true; } if (obj instanceof CDORevision) { CDORevision that = (CDORevision)obj; return getID().equals(that.getID()) && getBranch().equals(that.getBranch()) && getVersion() == that.getVersion(); } return false; }
protected final void writeValue(IDBStoreAccessor accessor, CDORevision revision, int index, Object value) { if (TRACER.isEnabled()) { TRACER .format( "Writing value for feature {0}.{1} index {2} of {3}v{4} : {5}", //$NON-NLS-1$ getContainingClass().getName(), getFeature().getName(), index, revision.getID(), revision.getVersion(), value); } addEntry(accessor, revision.getID(), revision.getVersion(), index, value); }
@Override protected void setKeyFields(PreparedStatement stmt, CDORevision revision) throws SQLException { IIDHandler idHandler = getMappingStrategy().getStore().getIDHandler(); idHandler.setCDOID(stmt, 1, revision.getID()); stmt.setInt(2, revision.getVersion()); }
public boolean handleRevision(CDORevision revision) { if (revision.getVersion() < CDOBranchVersion.FIRST_VERSION - 1) { revision = new DetachedCDORevision(revision.getEClass(), revision.getID(), revision.getBranch(), -revision.getVersion(), revision.getTimeStamp(), revision.getRevised()); } return delegate.handleRevision(revision); } }
@Override protected void setKeyFields(PreparedStatement stmt, CDORevision revision) throws SQLException { IIDHandler idHandler = getMappingStrategy().getStore().getIDHandler(); idHandler.setCDOID(stmt, 1, revision.getID()); stmt.setInt(2, revision.getVersion()); }
@Override protected void setKeyFields(PreparedStatement stmt, CDORevision revision) throws SQLException { IIDHandler idHandler = getMappingStrategy().getStore().getIDHandler(); idHandler.setCDOID(stmt, 1, revision.getID()); stmt.setInt(2, revision.getBranch().getID()); stmt.setInt(3, revision.getVersion()); }
private static CDORevision getPreviousVersion(final CDORevisionManager revisionManager, final CDORevision affectedRevision) { final CDOBranchVersion previousBranchVersion = affectedRevision.getBranch().getVersion(affectedRevision.getVersion() - 1); final CDORevision previousRevision = revisionManager.getRevisionByVersion(affectedRevision.getID(), previousBranchVersion, CDORevision.UNCHUNKED, true); return previousRevision; }
@Override protected void setKeyFields(PreparedStatement stmt, CDORevision revision) throws SQLException { getMappingStrategy().getStore().getIDHandler().setCDOID(stmt, 1, revision.getID()); stmt.setInt(2, revision.getBranch().getID()); stmt.setInt(3, revision.getVersion()); }
/** * @since 4.0 */ protected void showRevision(PrintStream pout, CDOServerBrowser browser, Map<CDOBranch, List<CDORevision>> allRevisions, Map<CDOID, List<CDORevision>> ids, String key, InternalRepository repository) { CDORevisionKey revisionKey = CDORevisionUtil.parseRevisionKey(key, repository.getBranchManager()); for (CDORevision revision : allRevisions.get(revisionKey.getBranch())) { if (revision.getVersion() == revisionKey.getVersion() && revision.getID().equals(revisionKey.getID())) { showRevision(pout, browser, ids, (InternalCDORevision)revision); return; } } }
protected final void writeValue(IDBStoreAccessor accessor, CDORevision revision, int idx, Object value) { if (TRACER.isEnabled()) { TRACER .format( "Writing value for feature {0}.{1} index {2} of {3} : {4}", getContainingClass().getName(), getFeature(), idx, revision, value); //$NON-NLS-1$ } addEntry(accessor, revision.getID(), revision.getVersion(), idx, value, revision.getTimeStamp()); }
protected final void writeValue(IDBStoreAccessor accessor, CDORevision revision, int idx, Object value) { if (TRACER.isEnabled()) { TRACER .format( "Writing value for feature {0}.{1} index {2} of {3} : {4}", getContainingClass().getName(), getFeature(), idx, revision, value); //$NON-NLS-1$ } addEntry(accessor, revision.getID(), revision.getBranch().getID(), revision.getVersion(), idx, value, revision.getTimeStamp()); }
private static CDORevision getRevisionByVersion(CDOObject object, CDOBranch branch, int version, CDORevision revision) { if (revision.getVersion() != version) { CDOSession session = object.cdoView().getSession(); if (!session.getRepositoryInfo().isSupportingAudits()) { throw new IllegalStateException(Messages.getString("CDOUtil.0")); //$NON-NLS-1$ } revision = session.getRevisionManager().getRevisionByVersion(object.cdoID(), branch.getVersion(version), 0, true); } return revision; }
private static CDORevision getRevisionByVersion(CDOObject object, CDOBranch branch, int version, CDORevision revision) { if (revision.getVersion() != version) { CDOSession session = object.cdoView().getSession(); if (!session.getRepositoryInfo().isSupportingAudits()) { throw new IllegalStateException(Messages.getString("CDOUtil.0")); //$NON-NLS-1$ } revision = session.getRevisionManager().getRevisionByVersion(object.cdoID(), branch.getVersion(version), 0, true); } return revision; }
protected final void writeValue(IDBStoreAccessor accessor, CDORevision revision, int index, Object value) { if (TRACER.isEnabled()) { TRACER.format("Writing value for feature {0}.{1} index {2} of {3} : {4}", //$NON-NLS-1$ getContainingClass().getName(), getFeature().getName(), index, revision, value); } addEntry(accessor, revision.getID(), revision.getBranch().getID(), revision.getVersion(), index, value); }
if (cdoRevision.getID().equals(id) && cdoRevision.getVersion() < branchVersion.getVersion() && !cdoRevision.isHistorical())
protected final void writeValue(IDBStoreAccessor accessor, CDORevision revision, int idx, Object value) { if (TRACER.isEnabled()) { TRACER.format("Writing value for feature {0}.{1} index {2} of {3}v{4} : {5}", getContainingClass().getName(), getFeature().getName(), idx, revision.getID(), revision.getVersion(), value); } IDBPreparedStatement stmt = accessor.getDBConnection().prepareStatement(sqlInsertEntry, ReuseProbability.HIGH); try { setKeyFields(stmt, revision); int column = getKeyFields().length + 1; stmt.setInt(column++, idx); typeMapping.setValue(stmt, column++, value); DBUtil.update(stmt, true); } catch (SQLException e) { throw new DBException(e); } finally { DBUtil.close(stmt); } }
public void objectDetached(IDBStoreAccessor accessor, CDOID id, long revised) { if (TRACER.isEnabled()) { TRACER.format("objectRevised {0}: {1}", id, revised); //$NON-NLS-1$ } CDOBranch main = getMappingStrategy().getStore().getRepository().getBranchManager().getMainBranch(); // get revision from cache to find out version number CDORevision revision = getMappingStrategy().getStore().getRepository().getRevisionManager() .getRevision(id, main.getHead(), /* chunksize = */0, CDORevision.DEPTH_NONE, true); // set cdo_revision_removed for all list items (so we have no NULL values) clearList(accessor, id, revision.getVersion(), FINAL_VERSION); }
public void objectDetached(IDBStoreAccessor accessor, CDOID id, long revised) { if (TRACER.isEnabled()) { TRACER.format("objectRevised {0}: {1}", id, revised); //$NON-NLS-1$ } CDOBranch main = getMappingStrategy().getStore().getRepository().getBranchManager().getMainBranch(); // get revision from cache to find out version number CDORevision revision = getMappingStrategy().getStore().getRepository().getRevisionManager() .getRevision(id, main.getHead(), /* chunksize = */0, CDORevision.DEPTH_NONE, true); // set cdo_revision_removed for all list items (so we have no NULL values) clearList(accessor, id, revision.getVersion(), FINAL_VERSION); }
public CDORevisionDeltaImpl(CDORevision sourceRevision, CDORevision targetRevision) { if (sourceRevision.getEClass() != targetRevision.getEClass()) { throw new IllegalArgumentException(); } eClass = sourceRevision.getEClass(); id = sourceRevision.getID(); branch = sourceRevision.getBranch(); version = sourceRevision.getVersion(); target = CDORevisionUtil.copyRevisable(targetRevision); compare(sourceRevision, targetRevision); CDORevisionData originData = sourceRevision.data(); CDORevisionData dirtyData = targetRevision.data(); Object dirtyContainerID = dirtyData.getContainerID(); if (dirtyContainerID instanceof CDOWithID) { dirtyContainerID = ((CDOWithID)dirtyContainerID).cdoID(); } if (!compare(originData.getContainerID(), dirtyContainerID) || !compare(originData.getContainingFeatureID(), dirtyData.getContainingFeatureID()) || !compare(originData.getResourceID(), dirtyData.getResourceID())) { addFeatureDelta(new CDOContainerFeatureDeltaImpl(dirtyData.getResourceID(), dirtyContainerID, dirtyData.getContainingFeatureID())); } }