Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-09-20 10:50:20 +0000
committerEike Stepper2013-09-20 10:50:20 +0000
commit6e4718788e24cefc9c06f0e73fba75858da6f2d0 (patch)
tree47bdd7fbd228b0d465499eac5e47122f06b7790d /plugins/org.eclipse.emf.cdo.server
parent3faadda34ad1992cd06a5c8b74ba3c1c01568299 (diff)
downloadcdo-6e4718788e24cefc9c06f0e73fba75858da6f2d0.tar.gz
cdo-6e4718788e24cefc9c06f0e73fba75858da6f2d0.tar.xz
cdo-6e4718788e24cefc9c06f0e73fba75858da6f2d0.zip
[417684] [Security] Provide a HomeFolderHandler
https://bugs.eclipse.org/bugs/show_bug.cgi?id=417684
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server')
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/TransactionCommitContext.java26
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/server/IStoreAccessor.java10
2 files changed, 36 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 efac9096a8..3985e6dbf8 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
@@ -184,6 +184,8 @@ public class TransactionCommitContext implements InternalCommitContext
private ExtendedDataInputStream lobs;
+ private Map<Object, Object> data;
+
public TransactionCommitContext(InternalTransaction transaction)
{
this.transaction = transaction;
@@ -544,6 +546,30 @@ public class TransactionCommitContext implements InternalCommitContext
lobs = in;
}
+ 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;
+ }
+
private InternalCDOPackageUnit[] lockPackageRegistry(InternalCDOPackageUnit[] packageUnits)
throws InterruptedException
{
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 4ae413fc9c..e28716723a 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
@@ -444,6 +444,16 @@ public interface IStoreAccessor extends IQueryHandlerProvider, BranchLoader, Com
* @since 4.1
*/
public List<LockState<Object, IView>> getPostCommmitLockStates();
+
+ /**
+ * @since 4.3
+ */
+ public <T> T getData(Object key);
+
+ /**
+ * @since 4.3
+ */
+ public <T> T setData(Object key, T data);
}
/**

Back to the top