MCPcopy Create free account
hub / github.com/C-176/LeoBlog-back / SocketPool

Class SocketPool

src/main/java/com/chen/LeoBlog/base/SocketPool.java:12–56  ·  view source on GitHub ↗

WebSocket连接池类

Source from the content-addressed store, hash-verified

10 * WebSocket连接池类
11 */
12public class SocketPool {
13
14 // 在线用户websocket连接池
15 private static final Map<Long, Session> ONLINE_USER_SESSIONS = new ConcurrentHashMap<>();
16
17 /**
18 * 新增一则连接
19 * @param keyId 设置主键
20 * @param session 设置session
21 */
22 public static void add(Long keyId, Session session) {
23
24 if (keyId!=null && session != null){
25 //生成一个唯一的keyId
26// UUID uuid = UUID.randomUUID(true);
27 ONLINE_USER_SESSIONS.put(keyId, session);
28 }
29 }
30
31 /**
32 * 根据Key删除连接
33 * @param keyId 主键
34 */
35 public static void remove(Long keyId) {
36 if (keyId!=null){
37 ONLINE_USER_SESSIONS.remove(keyId);
38 }
39 }
40
41 /**
42 * 获取在线人数
43 * @return 返回在线人数
44 */
45 public static int count(){
46 return ONLINE_USER_SESSIONS.size();
47 }
48
49 /**
50 * 获取在线session池
51 * @return 获取session池
52 */
53 public static Map<Long, Session> getSessionMap(){
54 return ONLINE_USER_SESSIONS;
55 }
56}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected