From 7df8ed14d605bcc731341ff12349bc117714b69e Mon Sep 17 00:00:00 2001
From: zhubaomin <zhubaomin>
Date: 星期四, 17 四月 2025 16:18:24 +0800
Subject: [PATCH] 优化代码
---
pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/tcp4Bjnl/TcpClUnit.java | 102 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 102 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/tcp4Bjnl/TcpClUnit.java b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/tcp4Bjnl/TcpClUnit.java
new file mode 100644
index 0000000..3bb4bab
--- /dev/null
+++ b/pipIrr-platform/pipIrr-mw/pipIrr-mw-rtu3rd/src/main/java/com/dy/rtuMw3rd/tcp4Bjnl/TcpClUnit.java
@@ -0,0 +1,102 @@
+package com.dy.rtuMw3rd.tcp4Bjnl;
+
+import com.dy.common.mw.UnitAdapterInterface;
+import com.dy.common.mw.UnitCallbackInterface;
+import com.dy.common.mw.UnitInterface;
+import com.dy.common.util.Callback;
+import com.dy.rtuMw3rd.tcp4Bjnl.protocol.BjnlProtocol;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+/**
+ * @Author: liurunyu
+ * @Date: 2025/03/18 14:20
+ * @Description
+ */
+public class TcpClUnit implements UnitInterface {
+
+ private static final Logger log = LogManager.getLogger(TcpClUnit.class) ;
+
+ private static TcpClUnit instance = new TcpClUnit() ;
+
+ public static TcpClUnitAdapter adapter ;
+ public static TcpClUnitConfigVo confVo ;
+
+ private TcpClUnit(){} ;
+
+ public static TcpClUnit getInstance(){
+ return instance ;
+ }
+
+ @Override
+ public void setAdapter(UnitAdapterInterface adapter) throws Exception {
+ if(adapter == null){
+ throw new Exception("Tcp Client妯″潡閫傞厤鍣ㄥ璞′笉鑳戒负绌猴紒") ;
+ }
+ TcpClUnit.adapter = (TcpClUnitAdapter)adapter ;
+ TcpClUnit.confVo = TcpClUnit.adapter.getConfig() ;
+ if(TcpClUnit.confVo == null){
+ throw new Exception("Tcp Client妯″潡閰嶇疆瀵硅薄涓嶈兘涓虹┖锛�") ;
+ }
+ }
+
+ @Override
+ public void start(UnitCallbackInterface callback) throws Exception {
+ System.out.println("Tcp Client妯″潡鎴愬姛鍚姩");
+ this.doStart();
+ callback.call(null) ;
+ }
+
+ @Override
+ public void stop(UnitCallbackInterface callback) throws Exception {
+ callback.call(null);
+ }
+
+ private void doStart(){
+ new Thread(() -> {
+ Exception ex ;
+ while(true){
+ ex = null ;
+ try {
+ new TcpConnect().createSession(
+ confVo.BjnlServerIp,
+ confVo.BjnlServerPort,
+ confVo.BjnlConnectTimeout,
+ new TcpHandler(),
+ new Callback() {
+ @Override
+ public void call(Object obj) {
+ if (obj == null) {
+ log.error("鍖椾含鍐滄灄--鍒涘缓缃戠粶浼氳瘽杩斿洖涓簄ull");
+ } else {
+ log.info("鍖椾含鍐滄灄--鎴愬姛鍒涘缓缃戠粶杩炴帴");
+ Worker w = Worker.getInstance() ;
+ w.setApikey(confVo.BjnlApikey);
+ w.setSecretkey(confVo.BjnlSecretkey );
+ w.setWorkInterval(confVo.heartBeatInterval + 0L);
+ w.start();
+ }
+ }
+ @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();
+ }
+
+}
--
Gitblit v1.8.0