Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java')
-rw-r--r--plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java28
1 files changed, 28 insertions, 0 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java b/plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java
index 0b9dfadc51..64258e28b0 100644
--- a/plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java
+++ b/plugins/org.eclipse.emf.cdo.server.hibernate/src/org/eclipse/emf/cdo/server/internal/hibernate/HibernateRawCommitContext.java
@@ -36,6 +36,7 @@ import org.eclipse.emf.ecore.EClass;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -60,6 +61,8 @@ public class HibernateRawCommitContext implements InternalCommitContext
private boolean usingEtypes;
+ private Map<Object, Object> data;
+
public CDORevision getRevision(CDOID id)
{
for (CDORevision cdoRevision : newObjects)
@@ -341,4 +344,29 @@ public class HibernateRawCommitContext implements InternalCommitContext
{
return null;
}
+
+ public <T> T getData(Object key)
+ {
+ if (data == null)
+ {
+ return null;
+ }
+
+ @SuppressWarnings("unchecked")
+ T result = (T)data.get(key);
+ return result;
+ }
+
+ public synchronized <T extends Object> T setData(Object key, T value)
+ {
+ if (data == null)
+ {
+ data = new HashMap<Object, Object>();
+ }
+
+ @SuppressWarnings("unchecked")
+ T old = (T)data.put(key, value);
+ return old;
+ }
+
}

Back to the top