From e457a33088ade4db86cd77e70eb5633c148f42e8 Mon Sep 17 00:00:00 2001 From: jaysunxiao Date: Sun, 23 May 2021 17:56:18 +0800 Subject: [PATCH] =?UTF-8?q?doc[protocol]:=20=E5=A2=9E=E5=8A=A0=E5=AD=97?= =?UTF-8?q?=E8=8A=82=E7=A0=81=E8=B0=83=E7=94=A8=E6=96=B9=E6=B3=95=E7=9A=84?= =?UTF-8?q?=E8=AF=B4=E6=98=8E=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zfoo/protocol/serializer/enhance/EnhanceArraySerializer.java | 1 + .../zfoo/protocol/serializer/enhance/EnhanceListSerializer.java | 1 + .../zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java | 1 + .../zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java | 1 + 4 files changed, 4 insertions(+) diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceArraySerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceArraySerializer.java index 4beff44c..c78236e4 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceArraySerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceArraySerializer.java @@ -32,6 +32,7 @@ public class EnhanceArraySerializer implements IEnhanceSerializer { var arrayField = (ArrayField) fieldRegistration; var arrayName = getArrayClassName(arrayField); + // 直接在字节码里调用方法是为了减小生成字节码的体积,下面的代码去掉也不会有任何影响 switch (arrayName) { case "boolean": builder.append(StringUtils.format("{}.writeBooleanArray($1, {});", EnhanceUtils.byteBufUtils, objectStr)); diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java index 91923f25..e030d684 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceListSerializer.java @@ -32,6 +32,7 @@ public class EnhanceListSerializer implements IEnhanceSerializer { public void writeObject(StringBuilder builder, String objectStr, Field field, IFieldRegistration fieldRegistration) { var listField = (ListField) fieldRegistration; + // 直接在字节码里调用方法是为了减小生成字节码的体积,下面的代码去掉也不会有任何影响 switch (listField.getType().getTypeName()) { case "java.util.List": builder.append(StringUtils.format("{}.writeIntList($1, (List){});", EnhanceUtils.byteBufUtils, objectStr)); diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java index 9f58eb06..f48432f8 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceMapSerializer.java @@ -40,6 +40,7 @@ public class EnhanceMapSerializer implements IEnhanceSerializer { var keyRegistration = mapField.getMapKeyRegistration(); var valueRegistration = mapField.getMapValueRegistration(); + // 直接在字节码里调用方法是为了减小生成字节码的体积,下面的代码去掉也不会有任何影响 if (keyRegistration instanceof BaseField) { if (valueRegistration instanceof BaseField) { var keyBaseRegistration = (BaseField) keyRegistration; diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java index 2fb13bfa..4129202c 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/enhance/EnhanceSetSerializer.java @@ -32,6 +32,7 @@ public class EnhanceSetSerializer implements IEnhanceSerializer { public void writeObject(StringBuilder builder, String objectStr, Field field, IFieldRegistration fieldRegistration) { var setField = (SetField) fieldRegistration; + // 直接在字节码里调用方法是为了减小生成字节码的体积,下面的代码去掉也不会有任何影响 switch (setField.getType().getTypeName()) { case "java.util.Set": builder.append(StringUtils.format("{}.writeIntSet($1, (Set){});", EnhanceUtils.byteBufUtils, objectStr));