diff options
author | Eike Stepper | 2013-09-20 10:50:20 +0000 |
---|---|---|
committer | Eike Stepper | 2013-09-20 10:50:20 +0000 |
commit | 6e4718788e24cefc9c06f0e73fba75858da6f2d0 (patch) | |
tree | 47bdd7fbd228b0d465499eac5e47122f06b7790d /plugins/org.eclipse.emf.cdo.server | |
parent | 3faadda34ad1992cd06a5c8b74ba3c1c01568299 (diff) | |
download | cdo-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')
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); } /** |