From 1a2b07f01ba4616fd9e894dddf474b56d020158c Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期一, 07 四月 2025 15:18:51 +0800
Subject: [PATCH] 整理版本

---
 pipIrr-platform/pipIrr-mw/pipIrr-mw-simulate-rtu/src/main/java/com/dy/simRtu/tcpClient/Worker.java |   96 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 96 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-simulate-rtu/src/main/java/com/dy/simRtu/tcpClient/Worker.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-simulate-rtu/src/main/java/com/dy/simRtu/tcpClient/Worker.java
new file mode 100644
index 0000000..ba73ff4
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-simulate-rtu/src/main/java/com/dy/simRtu/tcpClient/Worker.java
@@ -0,0 +1,96 @@
+package com.dy.simRtu.tcpClient;
+
+import com.dy.common.util.Callback;
+import com.dy.simRtu.ServerProperties;
+import com.dy.simRtu.tcpClient.upData.UpData;
+import com.dy.simRtu.tcpClient.upData.UpHeartBeat;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.mina.core.session.IoSession;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2024/12/6 8:49
+ * @Description
+ */
+public class Worker {
+
+    private static final Logger log = LogManager.getLogger(TcpClUnit.class) ;
+
+    private static Worker instance = new Worker() ;
+
+    private static TcpClUnitConfigVo confVo ;
+
+    public static IoSession session ;
+
+    private Worker(){
+    }
+
+    public static Worker getInstance(TcpClUnitConfigVo confVo){
+        Worker.confVo = confVo ;
+        return instance ;
+    }
+
+    public void doStart(){
+        new Thread(() -> {
+            Exception ex ;
+            while(true){
+                ex = null ;
+                try {
+                    new TcpConnect().createSession(
+                            confVo.mwServerIp,
+                            confVo.mwServerPort,
+                            confVo.connectTimeout,
+                            new TcpHandler(),
+                            new Callback() {
+                                @Override
+                                public void call(Object obj) {
+                                    if (obj == null) {
+                                        log.error("鍒涘缓缃戠粶浼氳瘽杩斿洖涓簄ull");
+                                    } else {
+                                        Worker.session = (IoSession) obj;
+                                        log.info("鎴愬姛鍒涘缓涓庨�氫俊涓棿浠剁殑缃戠粶杩炴帴");
+                                        UpData.setSession(Worker.session);
+                                        heartBeat() ;
+                                    }
+                                }
+                                @Override
+                                public void call(Object... objs) {
+                                }
+                                @Override
+                                public void exception(Exception e) {
+                                }
+                            });
+                }catch (Exception e){
+                    ex = e ;
+                }
+                if(ex == null){
+                    break ;
+                }else{
+                    try{
+                        Thread.sleep(100);
+                    }catch (Exception e){
+                    }
+                }
+            }
+        }).start();
+    }
+
+
+    private void heartBeat(){
+        new Thread(new Runnable(){
+            @Override
+            public void run() {
+                while(true){
+                    try {
+                        UpHeartBeat.upCd02Data(ServerProperties.rtuAddr);
+                        Thread.sleep(30000L);
+                        //Thread.sleep(30000000L);
+                    }catch (Exception e){
+                        continue;
+                    }
+                }
+            }
+        }).start();
+    }
+}

--
Gitblit v1.8.0