Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java')
-rw-r--r--plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java
index 5f1608b8c5..0968432db1 100644
--- a/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java
+++ b/plugins/org.eclipse.emf.cdo/src/org/eclipse/emf/internal/cdo/transaction/CDOTransactionImpl.java
@@ -2269,6 +2269,23 @@ public class CDOTransactionImpl extends CDOViewImpl implements InternalCDOTransa
return rev;
}
+ @Override
+ protected InternalCDORevision getRevision(CDOObject object)
+ {
+ if (object.cdoState() == CDOState.TRANSIENT)
+ {
+ InternalCDORevision revision = cleanRevisions.get(object);
+ if (revision == null)
+ {
+ throw new IllegalStateException("No revision for transient object " + object);
+ }
+
+ return revision;
+ }
+
+ return super.getRevision(object);
+ }
+
private final class ResolvingRevisionMap extends HashMap<InternalCDOObject, InternalCDORevision>
{
private static final long serialVersionUID = 1L;

Back to the top