Package org.eclipse.emf.cdo.transaction

# Class CDOPushTransaction

java.lang.Object
org.eclipse.net4j.util.event.Notifier
org.eclipse.emf.cdo.transaction.CDOPushTransaction

All Implemented Interfaces:
  `IAdaptable`, `CDOBranchPoint`, `CDOBranchProvider`, `CDOCommonTransaction`, `CDOCommonView`, `CDOChangeSetDataProvider`, `CDOCommitHistory.Provider<CDOObject,CDOObjectHistory>`, `CDORevisionProvider`, `CDOTimeProvider`, `CDOTransaction`, `CDOUserTransaction`, `CDOUpdatable`, `CDOView`, `org.eclipse.net4j.util.collection.Closeable`, `org.eclipse.net4j.util.container.IContainer<CDOResourceNode>`, `org.eclipse.net4j.util.event.INotifier`, `org.eclipse.net4j.util.event.INotifier.INotifier2`, `org.eclipse.net4j.util.options.IOptionsContainer`, `org.eclipse.net4j.util.properties.IPropertiesContainer`

public class CDOPushTransaction extends org.eclipse.net4j.util.event.Notifier implements CDOTransaction
A `transaction` that persists changes to the object graph locally on commit and can later load these changes and push them to the `repository`.

Since:
  3.0
Author:
  Eike Stepper
No Extend
  This interface is not intended to be extended by clients.
No Instantiate
  This class is not intended to be instantiated by clients.

## Nested Class Summary

## Nested classes/interfaces inherited from interface org.eclipse.emf.cdo.transaction.CDOTransaction

`CDOTransaction.CommitResult<T>, CDOTransaction.Options`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer

`org.eclipse.net4j.util.container.IContainer.Modifiable<E extends Object>, org.eclipse.net4j.util.container.IContainer.Persistable<E extends Object>, org.eclipse.net4j.util.container.IContainer.Persistence<E extends Object>`

## Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier

`org.eclipse.net4j.util.event.INotifier.INotifier2`

## 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.util.CDOUpdatable

`NO_TIMEOUT`

### Fields inherited from interface org.eclipse.emf.cdo.view.CDOView

`PROP_LIFECYCLE_EXCEPTION_HANDLER, PROP_TIME_MACHINE_DISABLED`

## Constructor Summary

Constructors
Constructor
Description
`CDOPushTransaction(CDOTransaction delegate)`
`CDOPushTransaction(CDOTransaction delegate, File file)`
`CDOPushTransaction(CDOTransaction delegate, File file, boolean reconstructSavepoints)`

## Method Summary

Modifier and Type
Method
Description
`void`
`addListener(org.eclipse.net4j.util.event.IListener listener)`
`void`
`addObjectHandler(CDOObjectHandler handler)`
`void`
`addRegistrationHandler(CDORegistrationHandler handler)`
`void`
`addTransactionHandler(CDOTransactionHandlerBase handler)`
`void`
`close()`
`CDOCommitInfo`
`commit()`
Same as `commit(null)`.
`CDOCommitInfo`
`commit(Runnable runnable, int attempts, IProgressMonitor monitor)`
`CDOCommitInfo`
`commit(Runnable runnable, Predicate<Long> retry, IProgressMonitor monitor)`
`CDOCommitInfo`
`commit(Runnable runnable, org.eclipse.net4j.util.Predicate<Long> retry, IProgressMonitor monitor)`
Deprecated.
`<T> CDOTransaction.CommitResult<T>`
`commit(Callable<T> callable, int attempts, IProgressMonitor monitor)`
`<T> CDOTransaction.CommitResult<T>`
`commit(Callable<T> callable, Predicate<Long> retry, IProgressMonitor monitor)`
`<T> CDOTransaction.CommitResult<T>`
`commit(Callable<T> callable, org.eclipse.net4j.util.Predicate<Long> retry, IProgressMonitor monitor)`
Deprecated.
`CDOCommitInfo`
`commit(IProgressMonitor monitor)`
Commits the modifications of this transaction to the repository and returns a `commit info` object if successful.
`CDOCommitInfo`
`commitAndClose(IProgressMonitor monitor, boolean keepOpenAfterCommitProblem)`
`CDOChangeSetData`
`compareRevisions(CDOBranchPoint source)`
`CDOBinaryResource`
`createBinaryResource(String path)`
`CDOQuery`
`createQuery(String language, String queryString)`
Same as `createQuery(language, queryString, null)`.
`CDOQuery`
`createQuery(String language, String queryString, boolean considerDirtyState)`
`CDOQuery`
`createQuery(String language, String queryString, Object context)`
`CDOQuery`
`createQuery(String language, String queryString, Object context, boolean considerDirtyState)`
`CDOResource`
`createResource(String path)`
`CDOResourceFolder`
`createResourceFolder(String path)`
`URI`
`createResourceURI(String path)`
Returns a `URI` that can be used in `ResourceSet.getResource(URI, boolean)` to load the resource with the specified path.
`static File`
`createTempFile(CDOTransaction transaction)`
`CDOTextResource`
`createTextResource(String path)`
`void`
`disableDurableLocking(boolean releaseLocks)`
Disables the storage of all information that's needed to `reopen` this view at a later point in time.
`String`
`enableDurableLocking()`
Enables the storage of all information that's needed to `reopen` this view at a later point in time.
`String`
`enableDurableLocking(boolean enable)`
Deprecated.
Use `enableDurableLocking()` instead or `disableDurableLocking(boolean)`, respectively.
`CDOSavepoint[]`
`exportChanges(OutputStream out)`
`Object`
`getAdapter(Class adapter)`
`CDOBinaryResource`
`getBinaryResource(String path)`
`CDOBranch`
`getBranch()`
Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.
`CDOChangeSetData`
`getChangeSetData()`
`String`
`getCommitComment()`
Returns the comment to be used in the next commit operation.
`String`
`getCommitProperty(String key)`
`Set<? extends EObject>`
`getCommittables()`
`Set<CDOObject>`
`getConflicts()`
Returns the set of objects that are conflicting with remote modifications or an empty set if `CDOTransaction.hasConflict()` returns `false`.
`CDOTransaction`
`getDelegate()`
`Map<CDOID,CDOObject>`
`getDetachedObjects()`
`Map<CDOID,CDOObject>`
`getDirtyObjects()`
`String`
`getDurableLockingID()`
`CDOResourceNode[]`
`getElements()`
`File`
`getFile()`
`CDOSavepoint`
`getFirstSavepoint()`
`CDOCommitHistory`
`getHistory()`
`CDOObjectHistory`
`getHistory(CDOObject object)`
`long`
`getLastCommitTime()`
`CDOSavepoint`
`getLastSavepoint()`
`long`
`getLastUpdateTime()`
Returns the time stamp of the last commit operation.
`org.eclipse.net4j.util.event.IListener[]`
`getListeners()`
`CDOLockOwner`
`getLockOwner()`
`CDOLockState[]`
`getLockStates(Collection<CDOID> ids)`
Get an array of `lock states` corresponding to the specified collection of `ids`.
`CDOLockState[]`
`getLockStates(Collection<CDOID> ids, boolean loadOnDemand)`
Get an array of `lock states` corresponding to the specified collection of `ids`.
`CDOLockState[]`
`getLockStatesOfObjects(Collection<? extends CDOObject> objects)`
Get an array of `lock states` corresponding to the specified collection of `objects`.
`Map<CDOID,CDOObject>`
`getNewObjects()`
`CDOObject`
`getObject(CDOID id)`
Returns the object for the given CDOID.
`CDOObject`
`getObject(CDOID id, boolean loadOnDemand)`
Returns the object for the given CDOID.
`<T extends EObject>
T`
`getObject(T objectFromDifferentView)`
Takes an object from a (possibly) different view and contextifies it for the usage with this view.
`CDOObjectHandler[]`
`getObjectHandlers()`
`Map<CDOID,CDOObject>`
`getObjects(Collection<CDOID> ids)`
Returns the objects with the given CDOIDs.
`CDOBinaryResource`
`getOrCreateBinaryResource(String path)`
`CDOResource`
`getOrCreateResource(String path)`
`CDOResourceFolder`
`getOrCreateResourceFolder(String path)`
`CDOTextResource`
`getOrCreateTextResource(String path)`
`CDOViewProvider`
`getProvider()`
Returns the `provider` that has opened this view.
`CDORegistrationHandler[]`
`getRegistrationHandlers()`
`CDOResource`
`getResource(String path)`
Same as `getResource(String, true)`.
`CDOResource`
`getResource(String path, boolean loadOnDemand)`
`CDOResourceFolder`
`getResourceFolder(String path)`
`CDOResourceNode`
`getResourceNode(String path)`
Returns the resource node with the given path.
`ResourceSet`
`getResourceSet()`
Returns the `resource set` this view is associated with.
`CDORevision`
`getRevision(CDOID id)`
`Map<CDOID,CDORevisionDelta>`
`getRevisionDeltas()`
`CDOResource`
`getRootResource()`
Returns the root resource of the repository.
`CDOSession`
`getSession()`
Returns the `session` this view was opened by.
`int`
`getSessionID()`
`CDOTextResource`
`getTextResource(String path)`
`long`
`getTimeStamp()`
Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.
`CDOTransactionHandler[]`
`getTransactionHandlers()`
`CDOTransactionHandler1[]`
`getTransactionHandlers1()`
`CDOTransactionHandler2[]`
`getTransactionHandlers2()`
`CDOUnitManager`
`getUnitManager()`
`URI`
`getURI()`
`URIHandler`
`getURIHandler()`
`int`
`getViewID()`
`Lock`
`getViewLock()`
`CDOViewSet`
`getViewSet()`
Returns the `view set` this view is associated with.
`boolean`
`hasConflict()`
Returns `true` if this transaction contains local modifications that are conflicting with remote modifications, `false` otherwise.
`boolean`
`hasListeners()`
`boolean`
`hasResource(String path)`
Returns `true` if a resource with the given path exists in the repository, `false`.
`CDOSavepoint[]`
`importChanges(InputStream in, boolean reconstructSavepoints)`
`boolean`
`isClosed()`
`boolean`
`isDirty()`
Returns `true` if this transaction is not closed and contains uncommitted changes, `false` otherwise.
`boolean`
`isDurableView()`
`boolean`
`isEmpty()`
`boolean`
`isHistorical()`
`boolean`
`isInvalidating()`
`boolean`
`isInvalidationRunnerActive()`
Deprecated.
`boolean`
`isLegacyModeEnabled()`
Deprecated.
`boolean`
`isObjectRegistered(CDOID id)`
Returns `true` if an `object` with the given `id` is currently registered in this view, `false` otherwise.
`boolean`
`isReadOnly()`
`void`
`lockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, long timeout)`
Locks the given objects.
`void`
`lockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, long timeout, boolean recursive)`
`CDOChangeSetData`
`merge(CDOBranchPoint source, CDOBranchPoint sourceBase, CDOBranchPoint targetBase, CDOMerger merger)`
Merges the changes between the given source base point and the given source point into this transaction.
`CDOChangeSetData`
`merge(CDOBranchPoint source, CDOBranchPoint sourceBase, CDOMerger merger)`
Merges the changes between the given source base point and the given source point into this transaction.
`CDOChangeSetData`
`merge(CDOBranchPoint source, CDOMerger merger)`
Merges the changes from the given source point into this transaction and possibly considers previous merges from that `branch` by inspecting the `merge source` information of the `commit history`.
`CDOChangeSetData`
`merge(CDOBranch source, CDOMerger merger)`
Merges the changes from the given source branch into this transaction and possibly considers previous merges from that branch by inspecting the `merge source` information of the `commit history`.
`CDOTransaction.Options`
`options()`
Returns the `options` of this view.
`final org.eclipse.net4j.util.registry.IRegistry<String,Object>`
`properties()`
`void`
`push()`
`void`
`push(IProgressMonitor progressMonitor)`
`<T extends EObject>
List<T>`
`queryInstances(EClass type)`
Returns a list of the instances of the given type.
`<T extends EObject>
org.eclipse.net4j.util.collection.CloseableIterator<T>`
`queryInstancesAsync(EClass type)`
Returns an iterator over the instances of the given type.
`<T extends EObject>
org.eclipse.net4j.util.collection.CloseableIterator<T>`
`queryInstancesAsync(EClass type, boolean exact)`
Returns an iterator over the instances of the given type.
`List<CDOResourceNode>`
`queryResources(CDOResourceFolder folder, String name, boolean exactMatch)`
Returns a list of the resources in the given folder with a name equal to or starting with the value of the name parameter.
`org.eclipse.net4j.util.collection.CloseableIterator<CDOResourceNode>`
`queryResourcesAsync(CDOResourceFolder folder, String name, boolean exactMatch)`
Returns an iterator over the resources in the given folder with a name equal to or starting with the value of the name parameter.
`List<CDOObjectReference>`
`queryXRefs(Set<CDOObject> targetObjects, EReference... sourceReferences)`
Returns a list of `object references` that represent the cross references to the specified target objects.
`List<CDOObjectReference>`
`queryXRefs(CDOObject targetObject, EReference... sourceReferences)`
Returns a list of `object references` that represent the cross references to the specified target object.
`org.eclipse.net4j.util.collection.CloseableIterator<CDOObjectReference>`
`queryXRefsAsync(Set<CDOObject> targetObjects, EReference... sourceReferences)`
Returns an iterator over the `object references` that represent the cross references to the specified target objects.
`void`
`refreshLockStates(Consumer<CDOLockState> consumer)`
Deprecated.
`int`
`reload(CDOObject... objects)`
Deprecated.
`void`
`removeListener(org.eclipse.net4j.util.event.IListener listener)`
`void`
`removeObjectHandler(CDOObjectHandler handler)`
`void`
`removeRegistrationHandler(CDORegistrationHandler handler)`
`void`
`removeTransactionHandler(CDOTransactionHandlerBase handler)`
`CDOChangeSetData`
`revertTo(CDOBranchPoint branchPoint)`
`void`
`rollback()`
`boolean`
`runAfterUpdate(long updateTime, Runnable runnable)`
`boolean`
`setBranch(CDOBranch branch)`
Same as calling `setBranchPoint(branch, getTimeStamp())`.
`boolean`
`setBranch(CDOBranch branch, IProgressMonitor monitor)`
Same as `CDOView.setBranch(CDOBranch)` with `IProgressMonitor`.
`boolean`
`setBranchPoint(CDOBranch branch, long timeStamp)`
Sets the `branch` and the point in (repository) time this view should refer to.
`boolean`
`setBranchPoint(CDOBranch branch, long timeStamp, IProgressMonitor monitor)`
Same as `CDOView.setBranchPoint(CDOBranch, long)` with a `IProgressMonitor`.
`boolean`
`setBranchPoint(CDOBranchPoint branchPoint)`
Same as calling `setBranchPoint(branchPoint.getBranch(), branchPoint.getTimeStamp())`.
`boolean`
`setBranchPoint(CDOBranchPoint branchPoint, IProgressMonitor monitor)`
Same as calling `CDOView.setBranchPoint(CDOBranchPoint)` with a `IProgressMonitor` .
`void`
`setCommitComment(String comment)`
Sets the comment to be used in the next commit operation.
`String`
`setCommitProperty(String key, String value)`
`void`
`setCommittables(Set<? extends EObject> committables)`
`protected void`
`setDirty(boolean dirty)`
`void`
`setResourcePathCache(Map<String,CDOID> resourcePathCache)`
Sets the new `map` to be used as a cache for various `get*Resource*(String path)` methods.
`CDOSavepoint`
`setSavepoint()`
Creates a save point in the `CDOTransaction` that can be used to roll back a part of the transaction
`boolean`
`setTimeStamp(long timeStamp)`
Same as calling `setBranchPoint(getBranch(), timeStamp)`.
`boolean`
`setTimeStamp(long timeStamp, IProgressMonitor monitor)`
Same as `CDOView.setTimeStamp(long)` with `IProgressMonitor`.
`void`
`syncExec(Runnable runnable)`
`<V> V`
`syncExec(Callable<V> callable)`
`String`
`toString()`
`void`
`unlockObjects()`
Unlocks all locked objects of this view.
`void`
`unlockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType)`
Unlocks the given locked objects of this view.
`void`
`unlockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, boolean recursive)`
`void`
`waitForUpdate(long updateTime)`
Blocks the calling thread until a commit operation with the given time stamp (or higher) has occurred.
`boolean`
`waitForUpdate(long updateTime, long timeoutMillis)`
Blocks the calling thread until a commit operation with the given time stamp (or higher) has occurred or the given timeout has expired.

### Methods inherited from class org.eclipse.net4j.util.event.Notifier

`addUniqueListener, fireEvent, fireEvent, fireEvent, fireThrowable, firstListenerAdded, getNotificationService, hasListener, lastListenerRemoved, listenerAdded, listenerRemoved`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### CDOPushTransaction

public CDOPushTransaction(CDOTransaction delegate) throws IOException

Throws:
  `IOException`

### CDOPushTransaction

public CDOPushTransaction(CDOTransaction delegate, File file) throws IOException

Throws:
  `IOException`

### CDOPushTransaction

public CDOPushTransaction(CDOTransaction delegate, File file, boolean reconstructSavepoints) throws IOException

Throws:
  `IOException`

## Method Details

### getDelegate

public CDOTransaction getDelegate()

### getFile

public File getFile()

### properties

public final org.eclipse.net4j.util.registry.IRegistry<String,Object> properties()

Specified by:
  `properties` in interface `org.eclipse.net4j.util.properties.IPropertiesContainer`
Since:
  4.4

### isDirty

public boolean isDirty()
Description copied from interface: `CDOTransaction`
Returns `true` if this transaction is not closed and contains uncommitted changes, `false` otherwise.

Specified by:
  `isDirty` in interface `CDOTransaction`
Specified by:
  `isDirty` in interface `CDOView`
See Also:
  - `CDOTransaction.isDirty()`

### setDirty

protected void setDirty(boolean dirty)

### commit

public CDOCommitInfo commit() throws CommitException
Description copied from interface: `CDOUserTransaction`
Same as `commit(null)`.

Specified by:
  `commit` in interface `CDOUserTransaction`
Throws:
  `CommitException`

### commit

public CDOCommitInfo commit(IProgressMonitor monitor) throws CommitException
Description copied from interface: `CDOUserTransaction`
Commits the modifications of this transaction to the repository and returns a `commit info` object if successful.

Various kinds of problems can cause the commit to fail and not all of them can be avoided by acquiring pessimistic `locks` on the modified objects. In particular you must expect and handle `containment cycle exceptions`. The following example shows how write robust transactions:

        CDOTransaction transaction = null;

        try
        {
          transaction = session.openTransaction();

          for (;;)
          {
            transaction.getViewLock().lock();

            try
            {
              CDOResource resource = transaction.getResource("/stock/resource1");

              // Modify the model here...

              transaction.commit();
              break;
            }
            catch (ConcurrentAccessException ex)
            {
              transaction.rollback();
            }
            catch (CommitException ex)
            {
              throw ex.wrap();
            }
            finally
            {
              transaction.getViewLock().unlock();
            }
          }
        }
        finally
        {
          if (transaction != null)
          {
            transaction.close();
          }
        }

Note that the transaction stays functional after a any call to the `commit()` methods. If the transaction is not closed after a commit it can be used to apply additional modifications to the model.

Specified by:
  `commit` in interface `CDOUserTransaction`
Throws:
  `CommitException`

### commit

@Deprecated public <T> CDOTransaction.CommitResult<T> commit(Callable<T> callable, org.eclipse.net4j.util.Predicate<Long> retry, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException, Exception
Deprecated.

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`
  `Exception`

### commit

public <T> CDOTransaction.CommitResult<T> commit(Callable<T> callable, Predicate<Long> retry, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException, Exception

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`
  `Exception`

### commit

public <T> CDOTransaction.CommitResult<T> commit(Callable<T> callable, int attempts, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException, Exception

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`
  `Exception`

### commit

@Deprecated public CDOCommitInfo commit(Runnable runnable, org.eclipse.net4j.util.Predicate<Long> retry, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException
Deprecated.

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`

### commit

public CDOCommitInfo commit(Runnable runnable, Predicate<Long> retry, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`

### commit

public CDOCommitInfo commit(Runnable runnable, int attempts, IProgressMonitor monitor) throws ConcurrentAccessException, CommitException

Specified by:
  `commit` in interface `CDOTransaction`
Throws:
  `ConcurrentAccessException`
  `CommitException`

### commitAndClose

public CDOCommitInfo commitAndClose(IProgressMonitor monitor, boolean keepOpenAfterCommitProblem) throws CommitException

Specified by:
  `commitAndClose` in interface `CDOTransaction`
Throws:
  `CommitException`

### rollback

public void rollback()

Specified by:
  `rollback` in interface `CDOUserTransaction`

### push

public void push() throws CommitException

Throws:
  `CommitException`

### push

public void push(IProgressMonitor progressMonitor) throws CommitException

Throws:
  `CommitException`

### exportChanges

public CDOSavepoint[] exportChanges(OutputStream out) throws IOException

Specified by:
  `exportChanges` in interface `CDOTransaction`
Throws:
  `IOException`

### importChanges

public CDOSavepoint[] importChanges(InputStream in, boolean reconstructSavepoints) throws IOException

Specified by:
  `importChanges` in interface `CDOTransaction`
Throws:
  `IOException`

### getLastCommitTime

public long getLastCommitTime()

Specified by:
  `getLastCommitTime` in interface `CDOTransaction`

### addListener

public void addListener(org.eclipse.net4j.util.event.IListener listener)

Specified by:
  `addListener` in interface `org.eclipse.net4j.util.event.INotifier`
Overrides:
  `addListener` in class `org.eclipse.net4j.util.event.Notifier`

### removeListener

public void removeListener(org.eclipse.net4j.util.event.IListener listener)

Specified by:
  `removeListener` in interface `org.eclipse.net4j.util.event.INotifier`
Overrides:
  `removeListener` in class `org.eclipse.net4j.util.event.Notifier`

### hasListeners

public boolean hasListeners()

Specified by:
  `hasListeners` in interface `org.eclipse.net4j.util.event.INotifier`
Overrides:
  `hasListeners` in class `org.eclipse.net4j.util.event.Notifier`

### getListeners

public org.eclipse.net4j.util.event.IListener[] getListeners()

Specified by:
  `getListeners` in interface `org.eclipse.net4j.util.event.INotifier`
Overrides:
  `getListeners` in class `org.eclipse.net4j.util.event.Notifier`

### addObjectHandler

public void addObjectHandler(CDOObjectHandler handler)

Specified by:
  `addObjectHandler` in interface `CDOView`

### addRegistrationHandler

public void addRegistrationHandler(CDORegistrationHandler handler)

Specified by:
  `addRegistrationHandler` in interface `CDOView`
Since:
  4.6

### addTransactionHandler

public void addTransactionHandler(CDOTransactionHandlerBase handler)

Specified by:
  `addTransactionHandler` in interface `CDOTransaction`
Since:
  4.0

### close

public void close()

Specified by:
  `close` in interface `org.eclipse.net4j.util.collection.Closeable`

### createQuery

public CDOQuery createQuery(String language, String queryString)
Description copied from interface: `CDOView`
Same as `createQuery(language, queryString, null)`.

Specified by:
  `createQuery` in interface `CDOView`
See Also:
  - `CDOView.createQuery(String, String, Object)`

### createQuery

public CDOQuery createQuery(String language, String queryString, Object context)

Specified by:
  `createQuery` in interface `CDOView`
Since:
  4.0

### createQuery

public CDOQuery createQuery(String language, String queryString, boolean considerDirtyState)

Specified by:
  `createQuery` in interface `CDOTransaction`
Since:
  4.0

### createQuery

public CDOQuery createQuery(String language, String queryString, Object context, boolean considerDirtyState)

Specified by:
  `createQuery` in interface `CDOTransaction`
Since:
  4.0

### createResourceFolder

public CDOResourceFolder createResourceFolder(String path)

Specified by:
  `createResourceFolder` in interface `CDOTransaction`
Since:
  4.0

### createResource

public CDOResource createResource(String path)

Specified by:
  `createResource` in interface `CDOTransaction`
See Also:
  - `ResourceSet.createResource(URI)`

### isLegacyModeEnabled

@Deprecated public boolean isLegacyModeEnabled()
Deprecated.

Specified by:
  `isLegacyModeEnabled` in interface `CDOView`
See Also:
  - `CDOUtil.setLegacyModeDefault(boolean)`

### getLastUpdateTime

public long getLastUpdateTime()
Description copied from interface: `CDOUpdatable`
Returns the time stamp of the last commit operation. May not be accurate if `passive updates` are disabled.

Specified by:
  `getLastUpdateTime` in interface `CDOUpdatable`

### waitForUpdate

public void waitForUpdate(long updateTime)
Description copied from interface: `CDOUpdatable`
Blocks the calling thread until a commit operation with the given time stamp (or higher) has occurred.

Specified by:
  `waitForUpdate` in interface `CDOUpdatable`
Parameters:
  `updateTime` - the time stamp of the update to wait for in milliseconds since Unix epoch.

### waitForUpdate

public boolean waitForUpdate(long updateTime, long timeoutMillis)
Description copied from interface: `CDOUpdatable`
Blocks the calling thread until a commit operation with the given time stamp (or higher) has occurred or the given timeout has expired.

Specified by:
  `waitForUpdate` in interface `CDOUpdatable`
Parameters:
  `updateTime` - the time stamp of the update to wait for in milliseconds since Unix epoch.
  `timeoutMillis` - the maximum number of milliseconds to wait for the update to occur, or `CDOUpdatable.NO_TIMEOUT` to wait indefinitely.
Returns:
  `true` if the specified commit operation has occurred within the given timeout period, `false` otherwise.

### runAfterUpdate

public boolean runAfterUpdate(long updateTime, Runnable runnable)

Specified by:
  `runAfterUpdate` in interface `CDOUpdatable`
Since:
  4.3

### getConflicts

public Set<CDOObject> getConflicts()
Description copied from interface: `CDOTransaction`
Returns the set of objects that are conflicting with remote modifications or an empty set if `CDOTransaction.hasConflict()` returns `false`.

Specified by:
  `getConflicts` in interface `CDOTransaction`

### getChangeSetData

public CDOChangeSetData getChangeSetData()

Specified by:
  `getChangeSetData` in interface `CDOChangeSetDataProvider`
Since:
  4.0

### getDetachedObjects

public Map<CDOID,CDOObject> getDetachedObjects()

Specified by:
  `getDetachedObjects` in interface `CDOTransaction`

### getDirtyObjects

public Map<CDOID,CDOObject> getDirtyObjects()

Specified by:
  `getDirtyObjects` in interface `CDOTransaction`

### getRevision

public CDORevision getRevision(CDOID id)

Specified by:
  `getRevision` in interface `CDORevisionProvider`
Since:
  4.0

### getFirstSavepoint

public CDOSavepoint getFirstSavepoint()

Specified by:
  `getFirstSavepoint` in interface `CDOTransaction`
Since:
  4.1

### getLastSavepoint

public CDOSavepoint getLastSavepoint()

Specified by:
  `getLastSavepoint` in interface `CDOTransaction`
Specified by:
  `getLastSavepoint` in interface `CDOUserTransaction`

### isInvalidationRunnerActive

@Deprecated public boolean isInvalidationRunnerActive()
Deprecated.

Specified by:
  `isInvalidationRunnerActive` in interface `CDOView`
Since:
  4.0

### isInvalidating

public boolean isInvalidating()

Specified by:
  `isInvalidating` in interface `CDOView`
Since:
  4.7

### getNewObjects

public Map<CDOID,CDOObject> getNewObjects()

Specified by:
  `getNewObjects` in interface `CDOTransaction`

### getObjects

public Map<CDOID,CDOObject> getObjects(Collection<CDOID> ids)
Description copied from interface: `CDOView`
Returns the objects with the given CDOIDs.

If objects are missing from the local cache they are loaded from the server in one round-trip.

Specified by:
  `getObjects` in interface `CDOView`
Parameters:
  `ids` - the collection of CDOIDs that identify the CDOObjects to return.
Returns:
  a map that contains the CDOObjects with the given CDOIDs.
Since:
  4.13

### getObject

public CDOObject getObject(CDOID id, boolean loadOnDemand)
Description copied from interface: `CDOView`
Returns the object for the given CDOID.

Specified by:
  `getObject` in interface `CDOView`
  `loadOnDemand` - whether to create and load the object, if it doesn't already exist.
Returns:
  the object resolved by the CDOID if the id is not `null`, or `null` if there isn't one and loadOnDemand is `false`.

### getObject

public CDOObject getObject(CDOID id)
Description copied from interface: `CDOView`
Returns the object for the given CDOID.

Same as `getObject(id, true)`.

Specified by:
  `getObject` in interface `CDOView`
See Also:
  - `CDOView.getObject(CDOID, boolean)`

### getObject

public <T extends EObject> T getObject(T objectFromDifferentView)
Description copied from interface: `CDOView`
Takes an object from a (possibly) different view and contextifies it for the usage with this view.

- If the given object is contained in this view it is returned unmodified.
- If the given object can not be cast to `CDOObject` it is returned unmodified.
- If the view of the given object is contained in a different session an `IllegalArgumentException` is thrown.
- If `null` is passed `null` is returned.

Specified by:
  `getObject` in interface `CDOView`

### getObjectHandlers

public CDOObjectHandler[] getObjectHandlers()

Specified by:
  `getObjectHandlers` in interface `CDOView`

### getRegistrationHandlers

public CDORegistrationHandler[] getRegistrationHandlers()

Specified by:
  `getRegistrationHandlers` in interface `CDOView`
Since:
  4.6

### getOrCreateResource

public CDOResource getOrCreateResource(String path)

Specified by:
  `getOrCreateResource` in interface `CDOTransaction`

### getOrCreateResourceFolder

public CDOResourceFolder getOrCreateResourceFolder(String path)

Specified by:
  `getOrCreateResourceFolder` in interface `CDOTransaction`
Since:
  4.0

### getResource

public CDOResource getResource(String path, boolean loadOnDemand) throws CDOResourceNodeNotFoundException

Specified by:
  `getResource` in interface `CDOView`
Throws:
  `CDOResourceNodeNotFoundException`
See Also:
  - `ResourceSet.getResource(URI, boolean)`

### getResource

public CDOResource getResource(String path) throws CDOResourceNodeNotFoundException
Description copied from interface: `CDOView`
Same as `getResource(String, true)`.

Specified by:
  `getResource` in interface `CDOView`
Throws:
  `CDOResourceNodeNotFoundException`
See Also:
  - `ResourceSet.getResource(URI, boolean)`

### getResourceNode

public CDOResourceNode getResourceNode(String path) throws CDOResourceNodeNotFoundException
Description copied from interface: `CDOView`
Returns the resource node with the given path.

Specified by:
  `getResourceNode` in interface `CDOView`
Returns:
  never `null`.
Throws:
  `CDOResourceNodeNotFoundException`

### createTextResource

public CDOTextResource createTextResource(String path)

Specified by:
  `createTextResource` in interface `CDOTransaction`
Since:
  4.2

### getOrCreateTextResource

public CDOTextResource getOrCreateTextResource(String path)

Specified by:
  `getOrCreateTextResource` in interface `CDOTransaction`
Since:
  4.2

### createBinaryResource

public CDOBinaryResource createBinaryResource(String path)

Specified by:
  `createBinaryResource` in interface `CDOTransaction`
Since:
  4.2

### getOrCreateBinaryResource

public CDOBinaryResource getOrCreateBinaryResource(String path)

Specified by:
  `getOrCreateBinaryResource` in interface `CDOTransaction`
Since:
  4.2

### getTextResource

public CDOTextResource getTextResource(String path) throws CDOResourceNodeNotFoundException

Specified by:
  `getTextResource` in interface `CDOView`
Throws:
  `CDOResourceNodeNotFoundException`
Since:
  4.2

### getBinaryResource

public CDOBinaryResource getBinaryResource(String path) throws CDOResourceNodeNotFoundException

Specified by:
  `getBinaryResource` in interface `CDOView`
Throws:
  `CDOResourceNodeNotFoundException`
Since:
  4.2

### getResourceFolder

public CDOResourceFolder getResourceFolder(String path) throws CDOResourceNodeNotFoundException

Specified by:
  `getResourceFolder` in interface `CDOView`
Throws:
  `CDOResourceNodeNotFoundException`
Since:
  4.2

### setResourcePathCache

public void setResourcePathCache(Map<String,CDOID> resourcePathCache)
Description copied from interface: `CDOView`
Sets the new `map` to be used as a cache for various `get*Resource*(String path)` methods.

Can be used to reset/clear the resource path cache by passing a `new HashMap<String, CDOID>()`. Smarter maps could implement a LRU eviction policy to limit the map capacity. Passing `null` disables resource path caching.

The default value is `new HashMap<String, CDOID>()`.

Specified by:
  `setResourcePathCache` in interface `CDOView`
Since:
  4.2
See Also:
  - `CDOView.getResourceNode(String)`
  - `CDOView.getResource(String)`
  - `CDOView.getResource(String, boolean)`
  - `CDOView.getBinaryResource(String)`
  - `CDOView.getTextResource(String)`
  - `CDOView.getResourceFolder(String)`
  - `CDOView.hasResource(String)`

### getResourceSet

public ResourceSet getResourceSet()
Description copied from interface: `CDOView`
Returns the `resource set` this view is associated with.

Same as calling `getViewSet().getResourceSet()`.

Specified by:
  `getResourceSet` in interface `CDOView`
See Also:
  - `CDOViewSet.getResourceSet()`

### getRevisionDeltas

public Map<CDOID,CDORevisionDelta> getRevisionDeltas()

Specified by:
  `getRevisionDeltas` in interface `CDOTransaction`

### getRootResource

public CDOResource getRootResource()
Description copied from interface: `CDOView`
Returns the root resource of the repository.

The root resource is a special resource with only `CDOResourceNodes` in its contents list. You can use it as the main entry into the new resource and folder structure.

Specified by:
  `getRootResource` in interface `CDOView`

### getSession

public CDOSession getSession()
Description copied from interface: `CDOView`
Returns the `session` this view was opened by.

Specified by:
  `getSession` in interface `CDOCommonView`
Specified by:
  `getSession` in interface `CDOView`
Returns:
  The session this view was opened by, or `null` if this view is closed.
See Also:
  - `Closeable.close()`
  - `Closeable.isClosed()`
  - `CDOViewContainer.openView()`
  - `CDOTransactionContainer.openTransaction()`

### getProvider

public CDOViewProvider getProvider()
Description copied from interface: `CDOView`
Returns the `provider` that has opened this view.

Specified by:
  `getProvider` in interface `CDOView`
Since:
  4.4

### createResourceURI

public URI createResourceURI(String path)
Description copied from interface: `CDOView`
Returns a `URI` that can be used in `ResourceSet.getResource(URI, boolean)` to load the resource with the specified path.

Specified by:
  `createResourceURI` in interface `CDOView`
Since:
  4.4

### getTimeStamp

public long getTimeStamp()
Description copied from interface: `CDOBranchPoint`
Returns the time stamp of this branch point, or the fixed special time stamp `unspecified` if this branch point marks the `head` of a branch.

Specified by:
  `getTimeStamp` in interface `CDOBranchPoint`
Specified by:
  `getTimeStamp` in interface `CDOTimeProvider`

### getDurableLockingID

public String getDurableLockingID()

Specified by:
  `getDurableLockingID` in interface `CDOCommonView`
Since:
  4.0

### getTransactionHandlers

public CDOTransactionHandler[] getTransactionHandlers()

Specified by:
  `getTransactionHandlers` in interface `CDOTransaction`

### getTransactionHandlers1

public CDOTransactionHandler1[] getTransactionHandlers1()

Specified by:
  `getTransactionHandlers1` in interface `CDOTransaction`
Since:
  4.0

### getTransactionHandlers2

public CDOTransactionHandler2[] getTransactionHandlers2()

Specified by:
  `getTransactionHandlers2` in interface `CDOTransaction`
Since:
  4.0

### getSessionID

public int getSessionID()

Specified by:
  `getSessionID` in interface `CDOCommonView`
Since:
  4.1

### isDurableView

public boolean isDurableView()

Specified by:
  `isDurableView` in interface `CDOCommonView`
Since:
  4.1

### getLockOwner

public CDOLockOwner getLockOwner()

Specified by:
  `getLockOwner` in interface `CDOCommonView`
Since:
  4.15

### getURI

public URI getURI()

Specified by:
  `getURI` in interface `CDOView`

### getViewID

public int getViewID()

Specified by:
  `getViewID` in interface `CDOCommonView`

### getViewSet

public CDOViewSet getViewSet()
Description copied from interface: `CDOView`
Returns the `view set` this view is associated with.

Specified by:
  `getViewSet` in interface `CDOView`
Returns:
  The view set this view is associated with, never `null`.
See Also:
  - `CDOViewSet.getViews()`

### getViewLock

public Lock getViewLock()

Specified by:
  `getViewLock` in interface `CDOView`
Since:
  4.5

### syncExec

public void syncExec(Runnable runnable)

Specified by:
  `syncExec` in interface `CDOView`
Since:
  4.5

### syncExec

public <V> V syncExec(Callable<V> callable) throws Exception

Specified by:
  `syncExec` in interface `CDOView`
Throws:
  `Exception`
Since:
  4.5

### hasConflict

public boolean hasConflict()
Description copied from interface: `CDOTransaction`
Returns `true` if this transaction contains local modifications that are conflicting with remote modifications, `false` otherwise.

Specified by:
  `hasConflict` in interface `CDOTransaction`
Specified by:
  `hasConflict` in interface `CDOView`
See Also:
  - `CDOTransaction.hasConflict()`

### hasResource

public boolean hasResource(String path)
Description copied from interface: `CDOView`
Returns `true` if a resource with the given path exists in the repository, `false`. Applies to `file resources`, as well.

Specified by:
  `hasResource` in interface `CDOView`
See Also:
  - `CDOView.getResource(String, boolean)`

### isClosed

public boolean isClosed()

Specified by:
  `isClosed` in interface `org.eclipse.net4j.util.collection.Closeable`

### isObjectRegistered

public boolean isObjectRegistered(CDOID id)
Description copied from interface: `CDOView`
Returns `true` if an `object` with the given `id` is currently registered in this view, `false` otherwise.

Specified by:
  `isObjectRegistered` in interface `CDOView`

### refreshLockStates

@Deprecated public void refreshLockStates(Consumer<CDOLockState> consumer)
Deprecated.
Description copied from interface: `CDOView`
Refreshes the `lock states` of this `view` with the latest states from the repository. If a lock state consumer is passed it is called for each resulting new lock state.

Specified by:
  `refreshLockStates` in interface `CDOView`
Since:
  4.12

### getLockStates

public CDOLockState[] getLockStates(Collection<CDOID> ids)
Description copied from interface: `CDOView`
Get an array of `lock states` corresponding to the specified collection of `ids`. If the collection of `ids` is empty, `lock states` of all objects are returned.

Specified by:
  `getLockStates` in interface `CDOView`
Since:
  4.6

### getLockStates

public CDOLockState[] getLockStates(Collection<CDOID> ids, boolean loadOnDemand)
Description copied from interface: `CDOView`
Get an array of `lock states` corresponding to the specified collection of `ids`. If the collection of `ids` is empty, `lock states` of all objects are returned.

Specified by:
  `getLockStates` in interface `CDOView`

### getLockStatesOfObjects

public CDOLockState[] getLockStatesOfObjects(Collection<? extends CDOObject> objects)
Description copied from interface: `CDOView`
Get an array of `lock states` corresponding to the specified collection of `objects`. If the collection of `objects` is empty, `lock states` of all locked objects are returned.

Specified by:
  `getLockStatesOfObjects` in interface `CDOView`
Since:
  4.6

### lockObjects

public void lockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, long timeout) throws InterruptedException
Description copied from interface: `CDOView`
Locks the given objects. Once the objects are locked, they will not be changed remotely or go in conflict state.

Specified by:
  `lockObjects` in interface `CDOView`
Throws:
  `InterruptedException`

### lockObjects

public void lockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, long timeout, boolean recursive) throws InterruptedException

Specified by:
  `lockObjects` in interface `CDOView`
Throws:
  `InterruptedException`

### options

public CDOTransaction.Options options()
Description copied from interface: `CDOCommonView`
Returns the `options` of this view.

Specified by:
  `options` in interface `CDOCommonView`
Specified by:
  `options` in interface `CDOTransaction`
Specified by:
  `options` in interface `CDOView`
Specified by:
  `options` in interface `org.eclipse.net4j.util.options.IOptionsContainer`

### queryResources

public List<CDOResourceNode> queryResources(CDOResourceFolder folder, String name, boolean exactMatch)
Description copied from interface: `CDOView`
Returns a list of the resources in the given folder with a name equal to or starting with the value of the name parameter.

Specified by:
  `queryResources` in interface `CDOView`
Parameters:
  `folder` - The folder to search in, or `null` for top level resource nodes.
  `name` - the name or prefix of the resource nodes to return.
  `exactMatch` - `true` if the complete name of the resource must match, `false` if only a common prefix of the name must match.

### queryResourcesAsync

public org.eclipse.net4j.util.collection.CloseableIterator<CDOResourceNode> queryResourcesAsync(CDOResourceFolder folder, String name, boolean exactMatch)
Description copied from interface: `CDOView`
Returns an iterator over the resources in the given folder with a name equal to or starting with the value of the name parameter. The underlying query will be executed asynchronously.

Specified by:
  `queryResourcesAsync` in interface `CDOView`
Parameters:
  `folder` - The folder to search in, or `null` for top level resource nodes.
  `name` - the name or prefix of the resource nodes to return.
  `exactMatch` - `true` if the complete name of the resource must match, `false` if only a common prefix of the name must match.

### queryInstances

public <T extends EObject> List<T> queryInstances(EClass type)
Description copied from interface: `CDOView`
Returns a list of the instances of the given type.

Specified by:
  `queryInstances` in interface `CDOView`
Since:
  4.3

### queryInstancesAsync

public <T extends EObject> org.eclipse.net4j.util.collection.CloseableIterator<T> queryInstancesAsync(EClass type)
Description copied from interface: `CDOView`
Returns an iterator over the instances of the given type. The underlying query will be executed asynchronously.

Specified by:
  `queryInstancesAsync` in interface `CDOView`
Since:
  4.3

### queryInstancesAsync

public <T extends EObject> org.eclipse.net4j.util.collection.CloseableIterator<T> queryInstancesAsync(EClass type, boolean exact)
Description copied from interface: `CDOView`
Returns an iterator over the instances of the given type. The underlying query will be executed asynchronously.

Specified by:
  `queryInstancesAsync` in interface `CDOView`
Since:
  4.6

### queryXRefs

public List<CDOObjectReference> queryXRefs(CDOObject targetObject, EReference... sourceReferences)
Description copied from interface: `CDOView`
Returns a list of `object references` that represent the cross references to the specified target object.

Specified by:
  `queryXRefs` in interface `CDOView`
Parameters:
  `targetObject` - The target object that referencing objects are requested for. An external target object can be used with the help of `CDOUtil.wrapExternalObject()`.
  `sourceReferences` - The reference features that referencing objects are requested for, or an empty array if all reference features are to be used in the request.
Since:
  4.0
See Also:
  - `CDOView.queryXRefs(Set, EReference...)`
  - `CDOView.queryXRefsAsync(Set, EReference...)`
  - `CDOUtil.wrapExternalObject(EObject, CDOView)`

### queryXRefs

public List<CDOObjectReference> queryXRefs(Set<CDOObject> targetObjects, EReference... sourceReferences)
Description copied from interface: `CDOView`
Returns a list of `object references` that represent the cross references to the specified target objects.

Specified by:
  `queryXRefs` in interface `CDOView`
Parameters:
  `targetObjects` - The set of target objects that referencing objects are requested for. External target objects can be used with the help of `CDOUtil.wrapExternalObject()`.
  `sourceReferences` - The reference features that referencing objects are requested for, or an empty array if all reference features are to be used in the request.
See Also:
  - `CDOView.queryXRefs(CDOObject, EReference...)`
  - `CDOView.queryXRefsAsync(Set, EReference...)`
  - `CDOUtil.wrapExternalObject(EObject, CDOView)`

### queryXRefsAsync

public org.eclipse.net4j.util.collection.CloseableIterator<CDOObjectReference> queryXRefsAsync(Set<CDOObject> targetObjects, EReference... sourceReferences)
Description copied from interface: `CDOView`
Returns an iterator over the `object references` that represent the cross references to the specified target objects. The underlying query will be executed asynchronously.

Specified by:
  `queryXRefsAsync` in interface `CDOView`
Parameters:
  `targetObjects` - The set of target objects that referencing objects are requested for. External target objects can be used with the help of `CDOUtil.wrapExternalObject()`.
  `sourceReferences` - The reference features that referencing objects are requested for, or an empty array if all reference features are to be used in the request.
See Also:
  - `CDOView.queryXRefs(CDOObject, EReference...)`
  - `CDOView.queryXRefs(Set, EReference...)`
  - `CDOUtil.wrapExternalObject(EObject, CDOView)`

### reload

@Deprecated public int reload(CDOObject... objects)
Deprecated.
Description copied from interface: `CDOView`
Reloads the given `objects` from the repository.

Specified by:
  `reload` in interface `CDOView`

### removeObjectHandler

public void removeObjectHandler(CDOObjectHandler handler)

Specified by:
  `removeObjectHandler` in interface `CDOView`

### removeRegistrationHandler

public void removeRegistrationHandler(CDORegistrationHandler handler)

Specified by:
  `removeRegistrationHandler` in interface `CDOView`
Since:
  4.6

### removeTransactionHandler

public void removeTransactionHandler(CDOTransactionHandlerBase handler)

Specified by:
  `removeTransactionHandler` in interface `CDOTransaction`
Since:
  4.0

### revertTo

public CDOChangeSetData revertTo(CDOBranchPoint branchPoint)

Specified by:
  `revertTo` in interface `CDOTransaction`
Since:
  4.15

### merge

public CDOChangeSetData merge(CDOBranch source, CDOMerger merger)
Description copied from interface: `CDOTransaction`
Merges the changes from the given source branch into this transaction and possibly considers previous merges from that branch by inspecting the `merge source` information of the `commit history`.

Specified by:
  `merge` in interface `CDOTransaction`
Since:
  4.6
See Also:
  - `CDOTransaction.merge(CDOBranchPoint, CDOMerger)`

### merge

public CDOChangeSetData merge(CDOBranchPoint source, CDOMerger merger)
Description copied from interface: `CDOTransaction`
Merges the changes from the given source point into this transaction and possibly considers previous merges from that `branch` by inspecting the `merge source` information of the `commit history`.

Specified by:
  `merge` in interface `CDOTransaction`

### merge

public CDOChangeSetData merge(CDOBranchPoint source, CDOBranchPoint sourceBase, CDOMerger merger)
Description copied from interface: `CDOTransaction`
Merges the changes between the given source base point and the given source point into this transaction.

Warning: If the branch of this transaction already contains merges from the given source point range (i.e., if this merge is a "remerge") this method will likely fail. One of the following methods should be used instead:

- `CDOTransaction.merge(CDOBranchPoint, CDOBranchPoint, CDOBranchPoint, CDOMerger)`
- `CDOTransaction.merge(CDOBranchPoint, CDOMerger)`
- `CDOTransaction.merge(CDOBranch, CDOMerger)`

Specified by:
  `merge` in interface `CDOTransaction`
Since:
  4.0

### merge

public CDOChangeSetData merge(CDOBranchPoint source, CDOBranchPoint sourceBase, CDOBranchPoint targetBase, CDOMerger merger)
Description copied from interface: `CDOTransaction`
Merges the changes between the given source base point and the given source point into this transaction.

When specifying an adequate target base point this method is able to perform a proper "remerge".

Specified by:
  `merge` in interface `CDOTransaction`
Since:
  4.6
See Also:
  - `CDOTransaction.merge(CDOBranchPoint, CDOMerger)`
  - `CDOTransaction.merge(CDOBranch, CDOMerger)`

### compareRevisions

public CDOChangeSetData compareRevisions(CDOBranchPoint source)

Specified by:
  `compareRevisions` in interface `CDOView`
Since:
  4.0

### getHistory

public CDOCommitHistory getHistory()

Specified by:
  `getHistory` in interface `CDOCommitHistory.Provider<CDOObject,CDOObjectHistory>`
Since:
  4.2

### getHistory

public CDOObjectHistory getHistory(CDOObject object)

Specified by:
  `getHistory` in interface `CDOCommitHistory.Provider<CDOObject,CDOObjectHistory>`
Since:
  4.2

### setSavepoint

public CDOSavepoint setSavepoint()
Description copied from interface: `CDOUserTransaction`
Creates a save point in the `CDOTransaction` that can be used to roll back a part of the transaction

Save points do not involve the server side, everything is done on the client side.

Specified by:
  `setSavepoint` in interface `CDOTransaction`
Specified by:
  `setSavepoint` in interface `CDOUserTransaction`

### unlockObjects

public void unlockObjects()
Description copied from interface: `CDOView`
Unlocks all locked objects of this view.

Specified by:
  `unlockObjects` in interface `CDOView`

### unlockObjects

public void unlockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType)
Description copied from interface: `CDOView`
Unlocks the given locked objects of this view.

Specified by:
  `unlockObjects` in interface `CDOView`

### unlockObjects

public void unlockObjects(Collection<? extends CDOObject> objects, org.eclipse.net4j.util.concurrent.IRWLockManager.LockType lockType, boolean recursive)

Specified by:
  `unlockObjects` in interface `CDOView`

### enableDurableLocking

@Deprecated public String enableDurableLocking(boolean enable)
Deprecated.
Use `enableDurableLocking()` instead or `disableDurableLocking(boolean)`, respectively.

Specified by:
  `enableDurableLocking` in interface `CDOView`
Since:
  4.0

### enableDurableLocking

public String enableDurableLocking()
Description copied from interface: `CDOView`
Enables the storage of all information that's needed to `reopen` this view at a later point in time. This information includes the `branch point`, the user ID of the `session`, whether it's a read-only view or a `transaction` and all the locks that are acquired or will be acquired while durable locking is enabled.

Specified by:
  `enableDurableLocking` in interface `CDOView`
Since:
  4.1
See Also:
  - `CDOViewContainer.openView(String)`
  - `CDOViewOpener.openView(String, ResourceSet)`
  - `CDOTransactionContainer.openTransaction(String)`
  - `CDOTransactionOpener.openTransaction(String, ResourceSet)`
  - `CDOView.disableDurableLocking(boolean)`

### disableDurableLocking

public void disableDurableLocking(boolean releaseLocks)
Description copied from interface: `CDOView`
Disables the storage of all information that's needed to `reopen` this view at a later point in time. If such information is stored when this method is called it is removed. Note that locks acquired by this view are only released if `true` is passed to the `releaseLocks` parameter.

Specified by:
  `disableDurableLocking` in interface `CDOView`
Since:
  4.1
See Also:
  - `CDOView.enableDurableLocking()`

### isReadOnly

public boolean isReadOnly()

Specified by:
  `isReadOnly` in interface `CDOCommonView`

### isHistorical

public boolean isHistorical()

Specified by:
  `isHistorical` in interface `CDOCommonView`
Since:
  4.5

### getBranch

public CDOBranch getBranch()
Description copied from interface: `CDOBranchPoint`
Returns the branch of this branch point, or `null` if this branch point is the `base` of the `main branch`.

Specified by:
  `getBranch` in interface `CDOBranchPoint`
Specified by:
  `getBranch` in interface `CDOBranchProvider`

### setBranchPoint

public boolean setBranchPoint(CDOBranch branch, long timeStamp)
Description copied from interface: `CDOView`
Sets the `branch` and the point in (repository) time this view should refer to. `Objects` provided by this view will be `valid` at this time. The special value `UNSPECIFIED_DATE` denotes a "floating view" that always shows the latest state of the repository.

Specified by:
  `setBranchPoint` in interface `CDOView`
Returns:
  `true` if the branch point was changed, `false` otherwise.

### setBranchPoint

public boolean setBranchPoint(CDOBranch branch, long timeStamp, IProgressMonitor monitor)
Description copied from interface: `CDOView`
Same as `CDOView.setBranchPoint(CDOBranch, long)` with a `IProgressMonitor`.

Specified by:
  `setBranchPoint` in interface `CDOView`
Since:
  4.4

### setBranchPoint

public boolean setBranchPoint(CDOBranchPoint branchPoint)
Description copied from interface: `CDOView`
Same as calling `setBranchPoint(branchPoint.getBranch(), branchPoint.getTimeStamp())`.

Specified by:
  `setBranchPoint` in interface `CDOView`

### setBranchPoint

public boolean setBranchPoint(CDOBranchPoint branchPoint, IProgressMonitor monitor)
Description copied from interface: `CDOView`
Same as calling `CDOView.setBranchPoint(CDOBranchPoint)` with a `IProgressMonitor` .

Specified by:
  `setBranchPoint` in interface `CDOView`
Since:
  4.4

### setBranch

public boolean setBranch(CDOBranch branch)
Description copied from interface: `CDOView`
Same as calling `setBranchPoint(branch, getTimeStamp())`.

Specified by:
  `setBranch` in interface `CDOView`

### setBranch

public boolean setBranch(CDOBranch branch, IProgressMonitor monitor)
Description copied from interface: `CDOView`
Same as `CDOView.setBranch(CDOBranch)` with `IProgressMonitor`.

Specified by:
  `setBranch` in interface `CDOView`
Since:
  4.4

### setTimeStamp

public boolean setTimeStamp(long timeStamp)
Description copied from interface: `CDOView`
Same as calling `setBranchPoint(getBranch(), timeStamp)`.

Specified by:
  `setTimeStamp` in interface `CDOView`

### setTimeStamp

public boolean setTimeStamp(long timeStamp, IProgressMonitor monitor)
Description copied from interface: `CDOView`
Same as `CDOView.setTimeStamp(long)` with `IProgressMonitor`.

Specified by:
  `setTimeStamp` in interface `CDOView`
Since:
  4.4

### getURIHandler

public URIHandler getURIHandler()

Specified by:
  `getURIHandler` in interface `CDOView`

### getUnitManager

public CDOUnitManager getUnitManager()

Specified by:
  `getUnitManager` in interface `CDOView`
Since:
  4.5

### getCommitComment

public String getCommitComment()
Description copied from interface: `CDOTransaction`
Returns the comment to be used in the next commit operation.

Specified by:
  `getCommitComment` in interface `CDOTransaction`
See Also:
  - `CDOCommitInfo.getComment()`

### setCommitComment

public void setCommitComment(String comment)
Description copied from interface: `CDOTransaction`
Sets the comment to be used in the next commit operation.

Specified by:
  `setCommitComment` in interface `CDOTransaction`
See Also:
  - `CDOCommitInfo.getComment()`

### getCommitProperty

public String getCommitProperty(String key)

Specified by:
  `getCommitProperty` in interface `CDOTransaction`

### setCommitProperty

public String setCommitProperty(String key, String value)

Specified by:
  `setCommitProperty` in interface `CDOTransaction`

### setCommittables

public void setCommittables(Set<? extends EObject> committables)

Specified by:
  `setCommittables` in interface `CDOTransaction`
Since:
  4.0

### getCommittables

public Set<? extends EObject> getCommittables()

Specified by:
  `getCommittables` in interface `CDOTransaction`
Since:
  4.0

### isEmpty

public boolean isEmpty()

Specified by:
  `isEmpty` in interface `org.eclipse.net4j.util.container.IContainer<CDOResourceNode>`
Since:
  4.2

### getElements

public CDOResourceNode[] getElements()

Specified by:
  `getElements` in interface `org.eclipse.net4j.util.container.IContainer<CDOResourceNode>`
Since:
  4.2

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### getAdapter

public Object getAdapter(Class adapter)

Specified by:
  `getAdapter` in interface `IAdaptable`
Since:
  4.2

### createTempFile

public static File createTempFile(CDOTransaction transaction) throws IOException

Throws:
  `IOException`