Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2011-05-19 16:01:54 +0000
committerEike Stepper2011-05-19 16:01:54 +0000
commit6077da81eb49defdbd315e0f2000acd0223c040f (patch)
treea67c92b5592a3cdcd49809db40ae8bb52671b593 /plugins/org.eclipse.emf.cdo.server/src/org
parent5dce22978572c1c63ea1aa78c082f7d3a206b378 (diff)
downloadcdo-6077da81eb49defdbd315e0f2000acd0223c040f.tar.gz
cdo-6077da81eb49defdbd315e0f2000acd0223c040f.tar.xz
cdo-6077da81eb49defdbd315e0f2000acd0223c040f.zip
make lastSessionID thread safe
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.server/src/org')
-rw-r--r--plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
index f4a4454698..c5631b5c45 100644
--- a/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
+++ b/plugins/org.eclipse.emf.cdo.server/src/org/eclipse/emf/cdo/internal/server/SessionManager.java
@@ -40,6 +40,7 @@ import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.atomic.AtomicInteger;
/**
* @author Eike Stepper
@@ -67,9 +68,9 @@ public class SessionManager extends Container<ISession> implements InternalSessi
private IUserManager userManager;
- private Map<Integer, InternalSession> sessions = new HashMap<Integer, InternalSession>();
+ private final Map<Integer, InternalSession> sessions = new HashMap<Integer, InternalSession>();
- private int lastSessionID;
+ private final AtomicInteger lastSessionID = new AtomicInteger();
/**
* @since 2.0
@@ -199,7 +200,7 @@ public class SessionManager extends Container<ISession> implements InternalSessi
*/
public InternalSession openSession(ISessionProtocol sessionProtocol)
{
- int id = ++lastSessionID;
+ int id = lastSessionID.incrementAndGet();
if (TRACER.isEnabled())
{
TRACER.trace("Opening session " + id); //$NON-NLS-1$

Back to the top