From ff55f15de19cb5bf02fa4d2313f4882ef9b3a452 Mon Sep 17 00:00:00 2001 From: liurunyu <lry9898@163.com> Date: 星期三, 30 四月 2025 10:47:34 +0800 Subject: [PATCH] 表阀一体机上报心跳数据最小间隔经常改动,时常不通知软件开发人员,所以通信中间件根据最小上报数据间隔会切断设备网络连接,为此改变中间件配置,最小心跳间隔改为在properties文件中配置。 --- pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/mw/channel/tcp/DataCodecFactory.java | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 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 index 417bda2..284dcb6 100644 --- 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 @@ -8,16 +8,32 @@ 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