From 981656d583e04274b4d828dc77636243dc169b88 Mon Sep 17 00:00:00 2001
From: hcong <1050828145@qq.com>
Date: 星期二, 03 十二月 2024 16:00:06 +0800
Subject: [PATCH] 1. 新增BgTask状态修改函数:先修改状态后发送状态回调 2. WebSocketMessageDecoder 改名 WebSocketMessageParser

---
 src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketSendMessageUtil.java    |    2 +-
 src/main/kotlin/cn/flightfeather/supervision/socket/processor/WebSocketReceiver.kt   |    4 ++--
 src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageParser.java      |    2 +-
 src/main/kotlin/cn/flightfeather/supervision/common/executor/BgTask.kt               |   15 +++++++++------
 src/main/kotlin/cn/flightfeather/supervision/socket/config/SPTextWebSocketHandler.kt |    4 ++--
 5 files changed, 15 insertions(+), 12 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/common/executor/BgTask.kt b/src/main/kotlin/cn/flightfeather/supervision/common/executor/BgTask.kt
index 2ed156b..3a0b2b1 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/common/executor/BgTask.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/common/executor/BgTask.kt
@@ -17,8 +17,8 @@
     var future: Future<*>? = null
 
     fun ready() {
-        taskStatus.status = TaskStatus.RUNNING
         taskStatus.startTime = LocalDateTime.now()
+        setStatus(TaskStatus.RUNNING)
     }
 
     fun execute() {
@@ -32,26 +32,29 @@
     }
 
     fun success() {
-        taskStatus.status = TaskStatus.SUCCESS
         complete()
-        onStatusChange(taskStatus)
+        setStatus(TaskStatus.SUCCESS)
     }
 
     fun fail() {
-        taskStatus.status = TaskStatus.FAIL
         complete()
-        onStatusChange(taskStatus)
+        setStatus(TaskStatus.FAIL)
     }
 
     fun shutdown() {
         if (future?.isCancelled == false && !future!!.isDone) {
             future!!.cancel(true)
         }
-        taskStatus.status = TaskStatus.SHUTDOWN
         complete()
+        setStatus(TaskStatus.SHUTDOWN)
     }
 
     fun complete() {
         taskStatus.endTime = LocalDateTime.now()
     }
+
+    fun setStatus(status: TaskStatus) {
+        taskStatus.status = status
+        onStatusChange(taskStatus)
+    }
 }
\ No newline at end of file
diff --git a/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageDecoder.java b/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageParser.java
similarity index 97%
rename from src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageDecoder.java
rename to src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageParser.java
index 7603ebc..e3ba70f 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageDecoder.java
+++ b/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketMessageParser.java
@@ -3,7 +3,7 @@
 import cn.flightfeather.supervision.common.utils.JsonUtil;
 import org.springframework.util.StringUtils;
 
-public class WebSocketMessageDecoder {
+public class WebSocketMessageParser {
     private static final String START_STR = "##";
     private static final String SPLIT_STR = "&&";
     private static final String END_STR = "%%";
diff --git a/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketSendMessageUtil.java b/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketSendMessageUtil.java
index 5fa8920..9c3b535 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketSendMessageUtil.java
+++ b/src/main/kotlin/cn/flightfeather/supervision/socket/WebSocketSendMessageUtil.java
@@ -12,7 +12,7 @@
     public static void sendBgTaskMessage(BgTaskStatus bgTaskStatus) {
         WebSocketMessage webSocketMessage = new WebSocketMessage(Constant.SocketMessageType.BG_TASK.getValue(),
                 bgTaskStatus);
-        String message = WebSocketMessageDecoder.encodeMessage(webSocketMessage);
+        String message = WebSocketMessageParser.encodeMessage(webSocketMessage);
         WebSocketSenderHandler.getInstance().broadcast(message);
     }
 }
diff --git a/src/main/kotlin/cn/flightfeather/supervision/socket/config/SPTextWebSocketHandler.kt b/src/main/kotlin/cn/flightfeather/supervision/socket/config/SPTextWebSocketHandler.kt
index e66e71e..bf27c37 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/socket/config/SPTextWebSocketHandler.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/socket/config/SPTextWebSocketHandler.kt
@@ -1,7 +1,7 @@
 package cn.flightfeather.supervision.socket.config
 
 import cn.flightfeather.supervision.common.utils.Constant
-import cn.flightfeather.supervision.socket.WebSocketMessageDecoder
+import cn.flightfeather.supervision.socket.WebSocketMessageParser
 import cn.flightfeather.supervision.socket.WsSessionManager
 import cn.flightfeather.supervision.socket.processor.WebSocketReceiver
 import org.springframework.stereotype.Component
@@ -47,7 +47,7 @@
         val payload = message.payload
         val sessionId = session.attributes["session_id"]
         println("server 鎺ユ敹鍒� $sessionId 鍙戦�佺殑 $payload")
-        if (WebSocketMessageDecoder.decodeMessage(payload).type ==
+        if (WebSocketMessageParser.decodeMessage(payload).type ==
             Constant.SocketHeartMessageType.HEART_MESSAGE_TYPE.value) {
             webSocketReceiver.onReceiveHeartMsg(payload, sessionId.toString())
         }
diff --git a/src/main/kotlin/cn/flightfeather/supervision/socket/processor/WebSocketReceiver.kt b/src/main/kotlin/cn/flightfeather/supervision/socket/processor/WebSocketReceiver.kt
index dcce685..6f6d837 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/socket/processor/WebSocketReceiver.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/socket/processor/WebSocketReceiver.kt
@@ -4,7 +4,7 @@
 import cn.flightfeather.supervision.common.log.WorkStreamLogInfo
 import cn.flightfeather.supervision.common.utils.Constant
 import cn.flightfeather.supervision.socket.WebSocketMessage
-import cn.flightfeather.supervision.socket.WebSocketMessageDecoder
+import cn.flightfeather.supervision.socket.WebSocketMessageParser
 import org.springframework.stereotype.Component
 import java.time.LocalDateTime
 
@@ -30,7 +30,7 @@
      * 鎺ユ敹蹇冭烦娑堟伅澶勭悊
      */
     fun onReceiveHeartMsg(msg: String, sessionId: String) {
-        val content = WebSocketMessageDecoder.encodeMessage(WebSocketMessage(Constant.SocketHeartMessageType.HEART_MESSAGE_TYPE.value,
+        val content = WebSocketMessageParser.encodeMessage(WebSocketMessage(Constant.SocketHeartMessageType.HEART_MESSAGE_TYPE.value,
             LocalDateTime.now()))
         webSocketSender.sendMsg(content, sessionId)
     }

--
Gitblit v1.9.3