From 6487bb8bdc244825d0ec9d0734da0693f4752650 Mon Sep 17 00:00:00 2001
From: Guoqs <123@jsowell.com>
Date: Mon, 15 Jul 2024 17:10:48 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E7=94=B5=E5=8D=95=E8=BD=A6=E5=8D=8F?=
=?UTF-8?q?=E8=AE=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../netty/decoder/ChargingPileDecoder.java | 6 +-
.../StartAndLengthFieldFrameDecoder.java | 76 ------------
.../StartAndLengthFieldFrameDecoder2.java | 117 ++++++++++++++++++
.../netty/domain/ChargingPileMessage.java | 14 +++
.../com/jsowell/netty/domain/DnyMessage.java | 15 +++
.../com/jsowell/netty/domain/Message68.java | 15 +++
.../electricbicycles/ChargingPileHandler.java | 30 +++++
...ctricBicyclesServerChannelInitializer.java | 5 +-
8 files changed, 199 insertions(+), 79 deletions(-)
create mode 100644 jsowell-netty/src/main/java/com/jsowell/netty/decoder/StartAndLengthFieldFrameDecoder2.java
create mode 100644 jsowell-netty/src/main/java/com/jsowell/netty/domain/DnyMessage.java
create mode 100644 jsowell-netty/src/main/java/com/jsowell/netty/domain/Message68.java
diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/decoder/ChargingPileDecoder.java b/jsowell-netty/src/main/java/com/jsowell/netty/decoder/ChargingPileDecoder.java
index 7f4146081..492c9a3e7 100644
--- a/jsowell-netty/src/main/java/com/jsowell/netty/decoder/ChargingPileDecoder.java
+++ b/jsowell-netty/src/main/java/com/jsowell/netty/decoder/ChargingPileDecoder.java
@@ -4,9 +4,11 @@ import com.jsowell.netty.domain.ChargingPileMessage;
import io.netty.buffer.ByteBuf;
import io.netty.channel.ChannelHandlerContext;
import io.netty.handler.codec.ByteToMessageDecoder;
+import lombok.extern.slf4j.Slf4j;
import java.util.List;
+@Slf4j
public class ChargingPileDecoder extends ByteToMessageDecoder {
private static final byte[] FRAME_HEADER = {'D', 'N', 'Y'}; // 包头为"DNY"
@@ -52,7 +54,7 @@ public class ChargingPileDecoder extends ByteToMessageDecoder {
// 验证校验和
short calculatedChecksum = calculateChecksum(in, length);
if (checksum != calculatedChecksum) {
- System.out.println("校验和错误,丢弃此帧");
+ log.info("校验和错误,丢弃此帧");
continue;
}
@@ -63,10 +65,12 @@ public class ChargingPileDecoder extends ByteToMessageDecoder {
}
private boolean isValidHeader(byte[] header) {
+ log.info("isValidHeader header:{}", header);
return header[0] == FRAME_HEADER[0] && header[1] == FRAME_HEADER[1] && header[2] == FRAME_HEADER[2];
}
private short calculateChecksum(ByteBuf buf, int length) {
+ log.info("calculateChecksum ByteBuf:{}, length:{}", buf.toString(), length);
short sum = 0;
for (int i = 0; i < length - 2; i++) {
sum += buf.getByte(buf.readerIndex() - length + i) & 0xFF;
diff --git a/jsowell-netty/src/main/java/com/jsowell/netty/decoder/StartAndLengthFieldFrameDecoder.java b/jsowell-netty/src/main/java/com/jsowell/netty/decoder/StartAndLengthFieldFrameDecoder.java
index 5cf54c4c3..7a6fffb7d 100644
--- a/jsowell-netty/src/main/java/com/jsowell/netty/decoder/StartAndLengthFieldFrameDecoder.java
+++ b/jsowell-netty/src/main/java/com/jsowell/netty/decoder/StartAndLengthFieldFrameDecoder.java
@@ -16,77 +16,6 @@ public class StartAndLengthFieldFrameDecoder extends ByteToMessageDecoder {
// 构造函数,初始化起始标志
public StartAndLengthFieldFrameDecoder() {}
- // 起始标志
- // private int HEAD_DATA;
-
-
- // public StartAndLengthFieldFrameDecoder(int HEAD_DATA) {
- // this.HEAD_DATA = HEAD_DATA;
- // }
-
- /**
- *
- * 协议开始的标准head_data,int类型,占据1个字节.
- * 表示数据的长度contentLength,int类型,占据1个字节.
- *
- */
- // public final int BASE_LENGTH = 1 + 1;
-
- // @Override
- // protected void decode2(ChannelHandlerContext ctx, ByteBuf buffer, List