From 8773c724919714845d4426a54d7b5aab8a9c0cae Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Thu, 20 Mar 2025 16:31:26 +0800
Subject: [PATCH] 优化结构

---
 ard-work/src/main/java/com/ard/tianyu/component/websocket/utils/WebSocketUtil.java |   15 +++++++--------
 1 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/ard-work/src/main/java/com/ard/tianyu/websocket/utils/WebSocketUtil.java b/ard-work/src/main/java/com/ard/tianyu/component/websocket/utils/WebSocketUtil.java
similarity index 83%
rename from ard-work/src/main/java/com/ard/tianyu/websocket/utils/WebSocketUtil.java
rename to ard-work/src/main/java/com/ard/tianyu/component/websocket/utils/WebSocketUtil.java
index 63447bb..8b5c710 100644
--- a/ard-work/src/main/java/com/ard/tianyu/websocket/utils/WebSocketUtil.java
+++ b/ard-work/src/main/java/com/ard/tianyu/component/websocket/utils/WebSocketUtil.java
@@ -1,7 +1,8 @@
-package com.ard.tianyu.websocket.utils;
+package com.ard.tianyu.component.websocket.utils;
 
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
+import com.ard.tianyu.component.websocket.WebSocketSessionManager;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.web.socket.TextMessage;
 import org.springframework.web.socket.WebSocketSession;
@@ -25,8 +26,6 @@
 @Slf4j
 public final class WebSocketUtil {
 
-    // 存储 websocket session
-    public static final ConcurrentMap<Long, WebSocketSession> ONLINE_USER_SESSIONS = new ConcurrentHashMap<>();
     /**
      * @param session 用户 session
      * @param message 发送内容
@@ -50,7 +49,7 @@
     }
 
     public static void sendMessage(Long userId, String message) {
-        WebSocketSession session = ONLINE_USER_SESSIONS.get(userId);
+        WebSocketSession session = WebSocketSessionManager.getSession(userId);
         sendMessage(session, message);
     }
 
@@ -98,7 +97,7 @@
      * @param message
      */
     public static void sendMessageAll(String message) {
-        ONLINE_USER_SESSIONS.forEach((sessionId, session) -> sendMessage(session, message));
+        WebSocketSessionManager.broadcast(message);
     }
 
     /**
@@ -108,7 +107,7 @@
      */
     public static void sendMessageAll(Map message) {
         JSONObject jsonObject = new JSONObject(message);
-        ONLINE_USER_SESSIONS.forEach((sessionId, session) -> sendMessage(session, jsonObject.toString()));
+        WebSocketSessionManager.broadcast(jsonObject.toString());
     }
 
     /**
@@ -118,7 +117,7 @@
      */
     public static void sendMessageAll(Object message) {
         String jsonMessage = JSONObject.toJSONString(message);  // 确保对象转换为 JSON 字符串
-        ONLINE_USER_SESSIONS.forEach((sessionId, session) -> sendMessage(session, jsonMessage));
+        WebSocketSessionManager.broadcast(jsonMessage);
     }
 
     /**
@@ -127,7 +126,7 @@
      * @param message
      */
     public static void sendMessageAll(List message) {
-        ONLINE_USER_SESSIONS.forEach((sessionId, session) -> sendMessage(session, JSON.toJSONString(message)));
+        WebSocketSessionManager.broadcast(JSON.toJSONString(message));
     }
 
 }
\ No newline at end of file

--
Gitblit v1.9.3