From 710c6a4d568237016a70b74aa3769b89e336725c Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期二, 13 五月 2025 15:48:21 +0800
Subject: [PATCH] 1、实现功能码92、93命令web后端接口定义与逻辑代码实现; 2、修改原来功能逻辑实现的逻辑,增加回调; 3、表阀一体机协议命令结果数据库存储补充实现。

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java |   39 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java
new file mode 100644
index 0000000..284dcb6
--- /dev/null
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java
@@ -0,0 +1,39 @@
+package com.dy.common.mw.channel.tcp;
+
+import org.apache.mina.filter.codec.ProtocolCodecFactory;
+import org.apache.mina.filter.codec.ProtocolEncoder;
+import org.apache.mina.filter.codec.ProtocolDecoder;
+import org.apache.mina.core.session.IoSession;
+
+public class DataCodecFactory implements ProtocolCodecFactory {
+
+	private TcpUnitAdapter adapter ;
+    private boolean stop = false ;//涓簍rue鏃讹紝鍋滄TCP鏈嶅姟锛屽苟鎶婂凡缁廡CP杩炴帴鏂繛鎺�
+
+    public DataCodecFactory(TcpUnitAdapter adapter) {
+    	this.adapter = adapter ;
+    }
+
+    public void stop(){
+        stop = true ;
+    }
+
+    public void recover(){
+        this.stop = false ;
+    }
+
+
+    public ProtocolEncoder getEncoder(IoSession ioSession) {
+        if(stop){
+            ioSession.closeNow() ;
+        }
+        return new DataEncoder();
+    }
+
+    public ProtocolDecoder getDecoder(IoSession ioSession) {
+        if(stop){
+            ioSession.closeNow() ;
+        }
+        return new DataDecoder(adapter.newPrefixedDataAvailableHandle());
+    }
+}

--
Gitblit v1.8.0