From 1cec3f64c5038ed3fba4cdf3eb016cd7534e29c5 Mon Sep 17 00:00:00 2001 From: Guoqs <123@jsowell.com> Date: Thu, 1 Aug 2024 11:35:31 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8ChannelHandlerContext?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jsowell/netty/handler/yunkuaichong/AbstractHandler.java | 4 ++-- .../netty/handler/yunkuaichong/LoginRequestHandler.java | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/AbstractHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/AbstractHandler.java index ea23ba298..e93152970 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/AbstractHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/AbstractHandler.java @@ -97,11 +97,11 @@ public abstract class AbstractHandler implements InitializingBean { * 阻止重复帧 * @return true 重复 */ - protected boolean verifyTheDuplicateRequest(YKCDataProtocol ykcDataProtocol, Channel channel) { + protected boolean verifyTheDuplicateRequest(YKCDataProtocol ykcDataProtocol, ChannelHandlerContext ctx) { // 获取序列号域 int serialNumber = BytesUtil.bytesToIntLittle(ykcDataProtocol.getSerialNumber()); // 获取channelId - String channelId = channel.id().asShortText(); + String channelId = ctx.channel().id().asShortText(); String redisKey = "Request_" + channelId + "_" + serialNumber; Boolean result = redisCache.setnx(redisKey, ykcDataProtocol.getHEXString(), 30); // result返回false说明没有设置成功,就是说已经有相同请求了,所以返回true重复 diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/LoginRequestHandler.java b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/LoginRequestHandler.java index dcb169025..99f59fdbb 100644 --- a/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/LoginRequestHandler.java +++ b/jsowell-netty/src/main/java/com/jsowell/netty/handler/yunkuaichong/LoginRequestHandler.java @@ -106,7 +106,7 @@ public class LoginRequestHandler extends AbstractHandler { } @Override - public byte[] supplyProcess(YKCDataProtocol ykcDataProtocol, ChannelHandlerContext channel) { + public byte[] supplyProcess(YKCDataProtocol ykcDataProtocol, ChannelHandlerContext ctx) { // 获取消息体 byte[] msgBody = ykcDataProtocol.getMsgBody(); @@ -118,7 +118,7 @@ public class LoginRequestHandler extends AbstractHandler { String pileSn = BytesUtil.binary(pileSnByte, 16); // 保存时间 - saveLastTimeAndCheckChannel(pileSn, channel); + saveLastTimeAndCheckChannel(pileSn, ctx); // 桩类型 0 表示直流桩, 1 表示交流桩 startIndex += length; @@ -164,7 +164,7 @@ public class LoginRequestHandler extends AbstractHandler { String business = BytesUtil.bcd2Str(businessTypeByteArr); // *********************** 字段解析完成,下面进行逻辑处理 *********************** // - if (verifyTheDuplicateRequest(ykcDataProtocol, channel)) { + if (verifyTheDuplicateRequest(ykcDataProtocol, ctx)) { return null; }