From bc3b6cf05eb55ca7e2f94d8efc45739195da0259 Mon Sep 17 00:00:00 2001
From: Administrator <zhubaomin>
Date: 星期二, 06 八月 2024 14:22:58 +0800
Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java             |   40 ++++++++++++--------
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application.yml                 |    6 +++
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml                      |    6 +-
 pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/ServerShutDownHook.java |   36 ++++++++++++++++++
 4 files changed, 69 insertions(+), 19 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
index 777c277..18b3460 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/Server.java
@@ -9,8 +9,6 @@
 import com.dy.rtuMw.server.tasks.FromRtuComResultConstantTask;
 import com.dy.rtuMw.server.tasks.FromRtuDataConstantTask;
 import com.dy.common.mw.UnitInterface;
-import com.dy.common.mw.channel.rmi.RmiConfigVo;
-import com.dy.common.mw.channel.rmi.RmiUnit;
 import com.dy.common.mw.channel.tcp.TcpConfigVo;
 import com.dy.common.mw.channel.tcp.TcpUnit;
 import com.dy.common.mw.core.CoreUnit;
@@ -53,21 +51,29 @@
 		new Server().startServer();
 	}
 	*/
+
+	public void  startServer(){
+		/**
+		try {
+			URL url = Server.class.getResource("/config/this.licence");
+			if(!new Lnp(null).parese(url.getPath())){
+				System.out.println("licence error!") ;
+				return ;
+			}
+		} catch (Exception e) {
+			System.out.println("licence error!") ;
+			return ;
+		}
+		*/
+		if(this.doStartServer()){
+			ServerShutDownHook.OnShutDown();
+		}
+	}
 	/**
 	 * 鍚姩鏈嶅姟
  	 */
-	public void startServer(){
-//		try {
-//			URL url = Server.class.getResource("/config/this.licence");
-//			if(!new Lnp(null).parese(url.getPath())){
-//				System.out.println("licence error!") ;
-//				return ;
-//			}
-//		} catch (Exception e) {
-//			System.out.println("licence error!") ;
-//			return ;
-//		}
-		//Server sv = new Server();
+	private boolean doStartServer(){
+		boolean running = false ;
 		long start = System.currentTimeMillis() ;
 		try {
 			//ConfigProperties.init(this.getClass().getResourceAsStream("/config/config.properties"), false);
@@ -120,11 +126,13 @@
             System.out.println("@@@@@@@@@@@@@@@@@@@@@@#      &@@@@@@@@       Runing in standalone mode" ) ;    
             System.out.println("@@@@@@@@@@@@@@@@@@@@@&       &@@@@@@@@       Startup in " + (System.currentTimeMillis() - start) + " MS" ) ;              
             System.out.println("@@@@@@@@@@@@@@@@@@@#         &@@@@@@@@       " + company) ;            
-            System.out.println("@@@@@@@@@@@@@@@@#O           &@@@@@@@@") ;              
-
+            System.out.println("@@@@@@@@@@@@@@@@#O           &@@@@@@@@") ;
+			running = true ;
 		}catch(Exception e){
 			e.printStackTrace();
+			running = false ;
 		}
+		return running ;
 	}
 	
 	private void startUnits(){
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/ServerShutDownHook.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/ServerShutDownHook.java
new file mode 100644
index 0000000..9f945ae
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/java/com/dy/rtuMw/ServerShutDownHook.java
@@ -0,0 +1,36 @@
+package com.dy.rtuMw;
+
+import com.dy.common.mw.protocol.Command;
+import com.dy.common.mw.protocol.CommandType;
+import com.dy.rtuMw.server.local.CommandInnerDeaLer;
+import com.dy.rtuMw.server.local.localProtocol.CodeLocal;
+import lombok.extern.slf4j.Slf4j;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/8/6 9:51
+ * @Description 绋嬪簭锛堟帶鍒跺彴锛夊叧闂鐞嗛挬瀛愮被
+ */
+@Slf4j
+public class ServerShutDownHook {
+    public static void OnShutDown(){
+        Runtime.getRuntime().addShutdownHook(new Thread(){
+            @Override
+            public void run(){
+            try{
+                // 纭繚杩欐浠g爜灏藉彲鑳藉揩閫熸墽琛岋紝閬垮厤褰卞搷JVM鐨勫叧闂�
+                log.info("绋嬪簭锛堟帶鍒跺彴锛夊叧闂挬瀛愮被鎵ц");
+                Command com = new Command() ;
+                com.id = Command.defaultId ;
+                com.code = CodeLocal.stopTcpSv ;
+                com.type = CommandType.innerCommand ;
+                new CommandInnerDeaLer().deal(com) ;
+                //Thread.sleep(100L);//瀹炴祴涓嶆墽琛�
+                log.info("鍏抽棴绋嬪簭鍓嶏紝鍏抽棴浜員CP鏈嶅姟");
+            }catch (Exception e){
+                log.error("绋嬪簭锛堟帶鍒跺彴锛夊叧闂挬瀛愬彂鐢熷紓甯�", e);
+            }
+            }
+        });
+    }
+}
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application.yml b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application.yml
index 5741442..4d129e5 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application.yml
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/application.yml
@@ -1,3 +1,9 @@
+logging:
+    charset:
+        console: UTF-8
+    config:
+        classpath: log4j2.yml
+
 spring:
     profiles:
         include: global, database
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml
index 91e1a72..aff06e8 100644
--- a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu/src/main/resources/log4j2.yml
@@ -19,7 +19,7 @@
             name: CONSOLE
             target: SYSTEM_OUT
             ThresholdFilter:
-                level: debug #杈撳嚭鏃ュ織绾у埆锛岃緭鍑烘棩蹇楁椂锛岄鍏堢敱Loggers.Root.level鎴朙oggers.Logger.level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢辨湰level鍒ゆ柇鏄惁杈撳嚭
+                level: DEBUG #杈撳嚭鏃ュ織绾у埆锛圖EBUG,INFO,WARN,ERROR,FATAL锛夛紝杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢盠oggers.Root.level鎴朙oggers.Logger.level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢辨湰level鍒ゆ柇鏄惁杈撳嚭
                 onMatch: ACCEPT #onMatch=ACCEPT 澶т簬绛変簬 "level" 閰嶇疆鐨勭瓑绾у湴鏃ュ織杈撳嚭
                 onMismatch: DENY #onMismatch=DENY 灏忎簬 "level" 閰嶇疆鐨勭瓑绾у湴鏃ュ織涓嶈緭鍑�
             #鏃ュ織鍐呭鏍峰紡
@@ -44,7 +44,7 @@
               fileName: ${log.path}/${project.name}.log
               filePattern: "${log.path}/$${date:yyyy-MM}/${project.name}-%d{yyyy-MM-dd}-%i.log.gz"
               ThresholdFilter:
-                  level: error #杈撳嚭鏃ュ織绾у埆锛岃緭鍑烘棩蹇楁椂锛岄鍏堢敱Loggers.Root.level鎴朙oggers.Logger.level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢辨湰level鍒ゆ柇鏄惁杈撳嚭
+                  level: error #杈撳嚭鏃ュ織绾у埆锛圖EBUG,INFO,WARN,ERROR,FATAL锛夛紝杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢盠oggers.Root.level鎴朙oggers.Logger.level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢辨湰level鍒ゆ柇鏄惁杈撳嚭
                   onMatch: ACCEPT #onMatch=ACCEPT 澶т簬绛変簬 "level" 閰嶇疆鐨勭瓑绾у湴鏃ュ織杈撳嚭
                   onMismatch: DENY #onMismatch=DENY 灏忎簬 "level" 閰嶇疆鐨勭瓑绾у湴鏃ュ織涓嶈緭鍑�
               #鏃ュ織鍐呭鏍峰紡
@@ -58,7 +58,7 @@
 
     Loggers:
         Root:
-            level: info #鏃ュ織杈撳嚭绾у埆锛屽叡鏈�8涓骇鍒紝鎸夌収浠庝綆鍒伴珮涓猴細all < trace < debug < info < warn < error < fatal < off
+            level: INFO #鏃ュ織杈撳嚭绾у埆锛圖EBUG,INFO,WARN,ERROR,FATAL锛夛紝鍏辨湁8涓骇鍒紝鎸夌収浠庝綆鍒伴珮涓猴細all < trace < debug < info < warn < error < fatal < off
             AppenderRef: #Root鐨勫瓙鑺傜偣锛岀敤鏉ユ寚瀹氳鏃ュ織杈撳嚭鍒板摢涓狝ppender.
                 - ref: CONSOLE #杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢辨湰level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢变笂闈㈢殑Appenders.Console.ThresholdFilter.level鍒ゆ柇鏄惁杈撳嚭
                 - ref: ROLLING_FILE  #杈撳嚭鏃ュ織鏃讹紝棣栧厛鐢辨湰level鍒ゆ柇鏄惁杈撳嚭锛岀劧鍚庡啀鐢变笂闈㈢殑Appenders.RollingFile.ThresholdFilter.level鍒ゆ柇鏄惁杈撳嚭

--
Gitblit v1.8.0