diff options
author | Eike Stepper | 2012-08-02 08:52:28 +0000 |
---|---|---|
committer | Eike Stepper | 2012-08-02 08:52:28 +0000 |
commit | 697b5b0db3f8793affbd035b8f7a207559593305 (patch) | |
tree | d637ad719202f4f48c1a0b3dea032162ce1bb9b5 /plugins/org.eclipse.emf.cdo.server | |
parent | 40aef9ed7ec44d2b8f0d5b2298e090753792ff08 (diff) | |
download | cdo-697b5b0db3f8793affbd035b8f7a207559593305.tar.gz cdo-697b5b0db3f8793affbd035b8f7a207559593305.tar.xz cdo-697b5b0db3f8793affbd035b8f7a207559593305.zip |
Transmit detached versions during commit
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server')
3 files changed, 22 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/TransactionCommitContext.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/TransactionCommitContext.java index b99e803d72..ec3a2b6d3c 100644 --- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/TransactionCommitContext.java +++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/TransactionCommitContext.java @@ -140,6 +140,8 @@ public class TransactionCommitContext implements InternalCommitContext private Map<CDOID, EClass> detachedObjectTypes; + private int[] detachedObjectVersions; + private InternalCDORevision[] dirtyObjects = new InternalCDORevision[0]; private InternalCDORevision[] cachedDetachedRevisions = new InternalCDORevision[0]; @@ -253,6 +255,11 @@ public class TransactionCommitContext implements InternalCommitContext return detachedObjectTypes; } + public int[] getDetachedObjectVersions() + { + return detachedObjectVersions; + } + public InternalCDORevision[] getDetachedRevisions() { // This array can contain null values as they only come from the cache! @@ -418,6 +425,11 @@ public class TransactionCommitContext implements InternalCommitContext this.detachedObjectTypes = detachedObjectTypes; } + public void setDetachedObjectVersions(int[] detachedObjectVersions) + { + this.detachedObjectVersions = detachedObjectVersions; + } + public void setAutoReleaseLocksEnabled(boolean on) { autoReleaseLocksEnabled = on; diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/server/IStoreAccessor.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/server/IStoreAccessor.java index 2c9f205e5f..c462baebe0 100644 --- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/server/IStoreAccessor.java +++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/server/IStoreAccessor.java @@ -366,6 +366,11 @@ public interface IStoreAccessor extends IQueryHandlerProvider, BranchLoader, Com public Map<CDOID, EClass> getDetachedObjectTypes(); /** + * @since 4.2 + */ + public int[] getDetachedObjectVersions(); + + /** * Returns a stream that all {@link CDOLob lobs} can be read from. The format of the data delivered through the * stream is: * <p> diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalCommitContext.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalCommitContext.java index fd074bc6d4..fb26a43801 100644 --- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalCommitContext.java +++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/spi/server/InternalCommitContext.java @@ -94,6 +94,11 @@ public interface InternalCommitContext extends IStoreAccessor.CommitContext */ public void setDetachedObjectTypes(Map<CDOID, EClass> detachedObjectTypes); + /** + * @since 4.2 + */ + public void setDetachedObjectVersions(int[] detachedObjectVersions); + public void setAutoReleaseLocksEnabled(boolean on); public void setCommitComment(String comment); |