From 9e5da8899bc21bb5b6b0a3c267108caa00199291 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期日, 19 五月 2024 15:46:08 +0800
Subject: [PATCH] websocket代码整理
---
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/UserAttributeHandshakeInterceptor.java | 3 ++-
smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataJsonMessageHandler.java | 6 +++++-
smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataRequestJsonWebSocketMessage.java | 3 +++
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/config/WebSocketAutoConfiguration.java | 2 ++
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/MapSessionWebSocketHandlerDecorator.java | 3 +++
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/WebSocketSessionHolder.java | 10 +++++-----
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/DefaultTypeSessionFilter.java | 2 +-
smart-starter-websocket/src/main/java/com/qianwen/core/websocket/handler/CustomWebSocketHandler.java | 1 +
8 files changed, 22 insertions(+), 8 deletions(-)
diff --git a/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataJsonMessageHandler.java b/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataJsonMessageHandler.java
index 0321ba0..4e49404 100644
--- a/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataJsonMessageHandler.java
+++ b/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataJsonMessageHandler.java
@@ -13,6 +13,9 @@
import org.springframework.stereotype.Component;
import org.springframework.web.socket.WebSocketSession;
+/**
+ * 瀹炵幇浜唚ebsocket妯″潡涓殑JsonMessageHandler锛屽疄鏃剁湅鏉夸娇鐢ㄨ澶勭悊鍣紝payload涓簲璇ユ惡甯ype:"realTimeData"灞炴��
+ */
@Component
public class RealTimeDataJsonMessageHandler implements JsonMessageHandler<RealTimeDataRequestJsonWebSocketMessage> {
private final IOrderWorkstationService orderWorkstationService;
@@ -37,10 +40,11 @@
}
}
+ @Override
public String type() {
return "realTimeData";
}
-
+ @Override
public Class<RealTimeDataRequestJsonWebSocketMessage> getMessageClass() {
return RealTimeDataRequestJsonWebSocketMessage.class;
}
diff --git a/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataRequestJsonWebSocketMessage.java b/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataRequestJsonWebSocketMessage.java
index 0d24dbd..2910f2c 100644
--- a/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataRequestJsonWebSocketMessage.java
+++ b/smart-man-boot/src/main/java/com/qianwen/smartman/common/websocket/realtime/RealTimeDataRequestJsonWebSocketMessage.java
@@ -3,6 +3,9 @@
import java.util.List;
import com.qianwen.core.websocket.message.AbstractJsonWebSocketMessage;
+/**
+ * 瀹炴椂鐪嬫澘涓殑杩斿洖淇℃伅锛歸orkstationIdList锛屾秹鍙婄姸鎬侊紝杩愯鏃堕棿绛変俊鎭�
+ */
public class RealTimeDataRequestJsonWebSocketMessage extends AbstractJsonWebSocketMessage {
private List<String> workstationIdList;
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/config/WebSocketAutoConfiguration.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/config/WebSocketAutoConfiguration.java
index 9cfc033..90fc7a0 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/config/WebSocketAutoConfiguration.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/config/WebSocketAutoConfiguration.java
@@ -33,7 +33,9 @@
@Bean
public WebSocketConfigurer webSocketConfigurer(List<HandshakeInterceptor> handshakeInterceptor, WebSocketHandler webSocketHandler) {
return registry -> {
+ //鏅�歸ebsocket鏀寔
registry.addHandler(webSocketHandler, new String[]{this.webSocketProperties.getPath()}).setAllowedOrigins(new String[]{this.webSocketProperties.getAllowOrigins()}).addInterceptors((HandshakeInterceptor[]) handshakeInterceptor.toArray(new HandshakeInterceptor[0]));
+ //鎻愪緵闄嶇骇涓篠ockJS鐨勬敮鎸�
registry.addHandler(webSocketHandler, new String[]{this.webSocketProperties.getSockJsPath()}).setAllowedOrigins(new String[]{this.webSocketProperties.getAllowOrigins()}).addInterceptors((HandshakeInterceptor[]) handshakeInterceptor.toArray(new HandshakeInterceptor[0])).withSockJS();
};
}
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/DefaultTypeSessionFilter.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/DefaultTypeSessionFilter.java
index 63e575c..01916e9 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/DefaultTypeSessionFilter.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/DefaultTypeSessionFilter.java
@@ -32,7 +32,7 @@
}).collect(Collectors.toList());
}
- @Override // com.qianwen.core.websocket.custom.SubscriptionSessionFilter
+ @Override
public void onClose(WebSocketSession session) {
}
}
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/UserAttributeHandshakeInterceptor.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/UserAttributeHandshakeInterceptor.java
index 2d4df83..dd4f1dd 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/UserAttributeHandshakeInterceptor.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/custom/UserAttributeHandshakeInterceptor.java
@@ -10,6 +10,7 @@
import org.springframework.web.socket.server.HandshakeInterceptor;
public class UserAttributeHandshakeInterceptor implements HandshakeInterceptor {
+ @Override
public boolean beforeHandshake(ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse, WebSocketHandler webSocketHandler, Map<String, Object> attributes) throws Exception {
BladeUser user = AuthUtil.getUser();
if (Func.isEmpty(user)) {
@@ -18,7 +19,7 @@
attributes.put("USER_KEY_ATTR_NAME", user);
return true;
}
-
+ @Override
public void afterHandshake(ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse, WebSocketHandler webSocketHandler, Exception e) {
}
}
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/handler/CustomWebSocketHandler.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/handler/CustomWebSocketHandler.java
index aa51400..c6a54e7 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/handler/CustomWebSocketHandler.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/handler/CustomWebSocketHandler.java
@@ -32,6 +32,7 @@
this.planTextMessageHandler = planTextMessageHandler;
}
+ @Override
public void handleTextMessage(WebSocketSession session, TextMessage message) throws JsonProcessingException {
if (message.getPayloadLength() == 0) {
return;
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/MapSessionWebSocketHandlerDecorator.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/MapSessionWebSocketHandlerDecorator.java
index ba01ce8..b9c2617 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/MapSessionWebSocketHandlerDecorator.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/MapSessionWebSocketHandlerDecorator.java
@@ -5,6 +5,9 @@
import org.springframework.web.socket.WebSocketSession;
import org.springframework.web.socket.handler.WebSocketHandlerDecorator;
+/**
+ * 涓�涓猈ebSocketHandler锛�(瑁呴グ鍣ㄦā寮�)锛屽鐞哤ebSocketSession鐨勫瓨鍙栧拰鍏抽棴
+ */
public class MapSessionWebSocketHandlerDecorator extends WebSocketHandlerDecorator {
private final SessionKeyGenerator sessionKeyGenerator;
diff --git a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/WebSocketSessionHolder.java b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/WebSocketSessionHolder.java
index 20b5a03..13b947b 100644
--- a/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/WebSocketSessionHolder.java
+++ b/smart-starter-websocket/src/main/java/com/qianwen/core/websocket/holder/WebSocketSessionHolder.java
@@ -7,9 +7,11 @@
import java.util.concurrent.ConcurrentHashMap;
import java.util.stream.Collectors;
import org.springframework.web.socket.WebSocketSession;
-
+/**
+ * websocketsession瀛樺彇
+ */
public class WebSocketSessionHolder {
- private static final Map<Object, Set<WebSocketSession>> USER_SESSION_MAP = new ConcurrentHashMap();
+ private static final Map<Object, Set<WebSocketSession>> USER_SESSION_MAP = new ConcurrentHashMap<>();
private WebSocketSessionHolder() {
}
@@ -32,9 +34,7 @@
}
public static Collection<WebSocketSession> getSessions() {
- return (Collection) USER_SESSION_MAP.values().stream().flatMap((v0) -> {
- return v0.stream();
- }).collect(Collectors.toList());
+ return USER_SESSION_MAP.values().stream().flatMap(Collection::stream).collect(Collectors.toList());
}
public static Set<Object> SessionKeys() {
--
Gitblit v1.9.3