1
14
15 package com.liferay.portal.servlet;
16
17 import com.liferay.portal.kernel.util.Validator;
18
19 import java.util.Collection;
20 import java.util.Map;
21 import java.util.concurrent.ConcurrentHashMap;
22
23 import javax.servlet.http.HttpSession;
24
25
30 public class PortalSessionContext {
31
32 public static int count() {
33 return _instance._count();
34 }
35
36 public static HttpSession get(String sessionId) {
37 return _instance._get(sessionId);
38 }
39
40 public static void put(String sessionId, HttpSession session) {
41 _instance._put(sessionId, session);
42 }
43
44 public static HttpSession remove(String sessionId) {
45 return _instance._remove(sessionId);
46 }
47
48 public static Collection<HttpSession> values() {
49 return _instance._values();
50 }
51
52 private PortalSessionContext() {
53 _sessionPool = new ConcurrentHashMap<String, HttpSession>();
54 }
55
56 private int _count() {
57 return _sessionPool.size();
58 }
59
60 private HttpSession _get(String sessionId) {
61 if (Validator.isNull(sessionId)) {
62 return null;
63 }
64
65 return _sessionPool.get(sessionId);
66 }
67
68 private void _put(String sessionId, HttpSession session) {
69 _sessionPool.put(sessionId, session);
70 }
71
72 private HttpSession _remove(String sessionId) {
73 return _sessionPool.remove(sessionId);
74 }
75
76 public Collection<HttpSession> _values() {
77 return _sessionPool.values();
78 }
79
80 private static PortalSessionContext _instance = new PortalSessionContext();
81
82 private Map<String, HttpSession> _sessionPool;
83
84 }