public void handleRevisions( EClass eClass, CDOBranch branch, long timeStamp, boolean exactTime, CDORevisionHandler handler) { Query query = getObjectContainer().query(); query.constrain(DB4ORevision.class); if (eClass != null) { query .descend(DB4ORevision.ATTRIBUTE_PACKAGE_NS_URI) .constrain(eClass.getEPackage().getNsURI()); query.descend(DB4ORevision.ATTRIBUTE_CLASS_NAME).constrain(eClass.getName()); } ObjectSet<?> revisions = query.execute(); if (revisions.isEmpty()) { return; } for (Object revision : revisions.toArray()) { CDORevision cdoRevision = DB4ORevision.getCDORevision(getStore(), (DB4ORevision) revision); handler.handleRevision(cdoRevision); } }
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); }