Class SyntheticCDORevision
java.lang.Object
org.eclipse.emf.cdo.spi.common.revision.AbstractCDORevision
org.eclipse.emf.cdo.spi.common.revision.StubCDORevision
org.eclipse.emf.cdo.spi.common.revision.SyntheticCDORevision
- All Implemented Interfaces:
CDOBranchPoint
,CDOBranchProvider
,CDOBranchVersion
,CDOIdentifiable
,CDOIDAndVersion
,CDORevisable
,CDORevision
,CDORevisionData
,CDORevisionKey
,CDOTimeProvider
,CDOVersionProvider
,CDOBranchAdjustable
,CDOReferenceAdjustable
,InternalCDORevision
- Direct Known Subclasses:
DetachedCDORevision
,PointerCDORevision
A synthetic revision that represents the initial period of an object in a
branch
when the object is
still associated with a revision from one of the baseline branches. It always has version
zero
and can only appear in branches below the
main
branch.
Synthetic revisions are used for two slightly different purposes:
- For
cache
optimization. - As a persistent "detach marker" indicating that the first modification of an object in a branch is its deletion.
Instances of this marker revision are not supposed to be exposed outside of a revision manager
. They are mainly used in the communication between a revision manager and its associated revision
loader
.
- Since:
- 3.0
- Author:
- Eike Stepper
-
Field Summary
Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchPoint
INVALID_DATE, UNSPECIFIED_DATE
Fields inherited from interface org.eclipse.emf.cdo.common.branch.CDOBranchVersion
UNSPECIFIED_VERSION
Fields inherited from interface org.eclipse.emf.cdo.common.revision.CDORevision
DEPTH_INFINITE, DEPTH_NONE, FIRST_VERSION, MAIN_BRANCH_ID, PERMISSION_PROVIDER, UNCHUNKED
Fields inherited from interface org.eclipse.emf.cdo.common.revision.CDORevisionData
NIL
Fields inherited from interface org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision
DO_NOT_CREATE_LIST
-
Constructor Summary
-
Method Summary
Methods inherited from class org.eclipse.emf.cdo.spi.common.revision.StubCDORevision
add, adjustBranches, adjustReferences, bypassPermissionChecks, clear, clearValues, compare, compareTo, contains, convertEObjects, copy, get, getContainerID, getContainingFeatureID, getListOrNull, getOrCreateList, getOrCreateList, getPermission, getResourceID, getResourceNodeName, getRevised, getTimeStamp, getValue, getVersion, hashCode, indexOf, isEmpty, isFrozen, isListPreserving, isUnchunked, lastIndexOf, merge, move, read, readValues, remove, set, setBranchPoint, setContainerID, setContainingFeatureID, setID, setList, setListPreserving, setPermission, setResourceID, setRevised, setUnchunked, setValue, setVersion, size, toArray, toArray, unset, write, write, writeValues
Methods inherited from class org.eclipse.emf.cdo.spi.common.revision.AbstractCDORevision
accept, accept, accept, adjustForCommit, data, equals, getAllPersistentFeatures, getClassInfo, getEClass, getFeatureIndex, getList, getList, getProperRevision, getRevisionForID, hashCode, initClassInfo, isHistorical, isReadable, isResource, isResourceFolder, isResourceNode, isValid, isValid, isWritable, revision, toString
-
Constructor Details
-
SyntheticCDORevision
-
-
Method Details
-
getID
- Specified by:
getID
in interfaceCDOIdentifiable
- Overrides:
getID
in classStubCDORevision
-
getBranch
Description copied from interface:CDOBranchVersion
Returns the branch of this branch version.- Specified by:
getBranch
in interfaceCDOBranchPoint
- Specified by:
getBranch
in interfaceCDOBranchProvider
- Specified by:
getBranch
in interfaceCDOBranchVersion
- Specified by:
getBranch
in interfaceInternalCDORevision
- Overrides:
getBranch
in classStubCDORevision
-
freeze
public void freeze()- Specified by:
freeze
in interfaceInternalCDORevision
- Overrides:
freeze
in classStubCDORevision
-