潘志宝
2024-10-09 c0b8cf32504dd1a42780bb1ee06ae8a7b0d7b120
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.iailab.framework.websocket.core.session;
 
import org.springframework.web.socket.WebSocketSession;
 
import java.util.Collection;
 
/**
 * {@link WebSocketSession} 管理器的接口
 *
 * @author iailab
 */
public interface WebSocketSessionManager {
 
    /**
     * 添加 Session
     *
     * @param session Session
     */
    void addSession(WebSocketSession session);
 
    /**
     * 移除 Session
     *
     * @param session Session
     */
    void removeSession(WebSocketSession session);
 
    /**
     * 获得指定编号的 Session
     *
     * @param id Session 编号
     * @return Session
     */
    WebSocketSession getSession(String id);
 
    /**
     * 获得指定用户类型的 Session 列表
     *
     * @param userType 用户类型
     * @return Session 列表
     */
    Collection<WebSocketSession> getSessionList(Integer userType);
 
    /**
     * 获得指定用户编号的 Session 列表
     *
     * @param userType 用户类型
     * @param userId 用户编号
     * @return Session 列表
     */
    Collection<WebSocketSession> getSessionList(Integer userType, Long userId);
 
}