del[protocol]: 简化代码

This commit is contained in:
jaysunxiao
2021-10-14 21:12:45 +08:00
parent 5b9cbd046d
commit 0d8d1acfa1
29 changed files with 168 additions and 291 deletions
@@ -19,8 +19,8 @@ import com.zfoo.protocol.collection.ArrayUtils;
import com.zfoo.protocol.collection.CollectionUtils;
import com.zfoo.protocol.generate.GenerateProtocolFile;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.serializer.*;
import com.zfoo.protocol.serializer.enhance.*;
import com.zfoo.protocol.serializer.reflect.*;
import com.zfoo.protocol.util.ReflectionUtils;
import com.zfoo.protocol.util.StringUtils;
import io.netty.buffer.ByteBuf;
@@ -82,20 +82,20 @@ public abstract class EnhanceUtils {
}
}
tempEnhanceSerializerMap.put(BooleanSerializer.getInstance(), new EnhanceBooleanSerializer());
tempEnhanceSerializerMap.put(ByteSerializer.getInstance(), new EnhanceByteSerializer());
tempEnhanceSerializerMap.put(ShortSerializer.getInstance(), new EnhanceShortSerializer());
tempEnhanceSerializerMap.put(IntSerializer.getInstance(), new EnhanceIntSerializer());
tempEnhanceSerializerMap.put(LongSerializer.getInstance(), new EnhanceLongSerializer());
tempEnhanceSerializerMap.put(FloatSerializer.getInstance(), new EnhanceFloatSerializer());
tempEnhanceSerializerMap.put(DoubleSerializer.getInstance(), new EnhanceDoubleSerializer());
tempEnhanceSerializerMap.put(CharSerializer.getInstance(), new EnhanceCharSerializer());
tempEnhanceSerializerMap.put(StringSerializer.getInstance(), new EnhanceStringSerializer());
tempEnhanceSerializerMap.put(ObjectProtocolSerializer.getInstance(), new EnhanceObjectProtocolSerializer());
tempEnhanceSerializerMap.put(ListSerializer.getInstance(), new EnhanceListSerializer());
tempEnhanceSerializerMap.put(SetSerializer.getInstance(), new EnhanceSetSerializer());
tempEnhanceSerializerMap.put(MapSerializer.getInstance(), new EnhanceMapSerializer());
tempEnhanceSerializerMap.put(ArraySerializer.getInstance(), new EnhanceArraySerializer());
tempEnhanceSerializerMap.put(BooleanSerializer.INSTANCE, new EnhanceBooleanSerializer());
tempEnhanceSerializerMap.put(ByteSerializer.INSTANCE, new EnhanceByteSerializer());
tempEnhanceSerializerMap.put(ShortSerializer.INSTANCE, new EnhanceShortSerializer());
tempEnhanceSerializerMap.put(IntSerializer.INSTANCE, new EnhanceIntSerializer());
tempEnhanceSerializerMap.put(LongSerializer.INSTANCE, new EnhanceLongSerializer());
tempEnhanceSerializerMap.put(FloatSerializer.INSTANCE, new EnhanceFloatSerializer());
tempEnhanceSerializerMap.put(DoubleSerializer.INSTANCE, new EnhanceDoubleSerializer());
tempEnhanceSerializerMap.put(CharSerializer.INSTANCE, new EnhanceCharSerializer());
tempEnhanceSerializerMap.put(StringSerializer.INSTANCE, new EnhanceStringSerializer());
tempEnhanceSerializerMap.put(ObjectProtocolSerializer.INSTANCE, new EnhanceObjectProtocolSerializer());
tempEnhanceSerializerMap.put(ListSerializer.INSTANCE, new EnhanceListSerializer());
tempEnhanceSerializerMap.put(SetSerializer.INSTANCE, new EnhanceSetSerializer());
tempEnhanceSerializerMap.put(MapSerializer.INSTANCE, new EnhanceMapSerializer());
tempEnhanceSerializerMap.put(ArraySerializer.INSTANCE, new EnhanceArraySerializer());
}
public static IEnhanceSerializer enhanceSerializer(ISerializer serializer) {
@@ -22,10 +22,10 @@ import com.zfoo.protocol.generate.GenerateProtocolDocument;
import com.zfoo.protocol.generate.GenerateProtocolFile;
import com.zfoo.protocol.generate.GenerateProtocolPath;
import com.zfoo.protocol.registration.field.*;
import com.zfoo.protocol.serializer.*;
import com.zfoo.protocol.serializer.cs.GenerateCsUtils;
import com.zfoo.protocol.serializer.js.GenerateJsUtils;
import com.zfoo.protocol.serializer.lua.GenerateLuaUtils;
import com.zfoo.protocol.serializer.reflect.*;
import com.zfoo.protocol.util.AssertionUtils;
import com.zfoo.protocol.util.ReflectionUtils;
import com.zfoo.protocol.util.StringUtils;
@@ -65,23 +65,23 @@ public class ProtocolAnalysis {
static {
// 初始化基础类型序列化器
tempBaseSerializerMap.put(boolean.class, BooleanSerializer.getInstance());
tempBaseSerializerMap.put(Boolean.class, BooleanSerializer.getInstance());
tempBaseSerializerMap.put(byte.class, ByteSerializer.getInstance());
tempBaseSerializerMap.put(Byte.class, ByteSerializer.getInstance());
tempBaseSerializerMap.put(short.class, ShortSerializer.getInstance());
tempBaseSerializerMap.put(Short.class, ShortSerializer.getInstance());
tempBaseSerializerMap.put(int.class, IntSerializer.getInstance());
tempBaseSerializerMap.put(Integer.class, IntSerializer.getInstance());
tempBaseSerializerMap.put(long.class, LongSerializer.getInstance());
tempBaseSerializerMap.put(Long.class, LongSerializer.getInstance());
tempBaseSerializerMap.put(float.class, FloatSerializer.getInstance());
tempBaseSerializerMap.put(Float.class, FloatSerializer.getInstance());
tempBaseSerializerMap.put(double.class, DoubleSerializer.getInstance());
tempBaseSerializerMap.put(Double.class, DoubleSerializer.getInstance());
tempBaseSerializerMap.put(char.class, CharSerializer.getInstance());
tempBaseSerializerMap.put(Character.class, CharSerializer.getInstance());
tempBaseSerializerMap.put(String.class, StringSerializer.getInstance());
tempBaseSerializerMap.put(boolean.class, BooleanSerializer.INSTANCE);
tempBaseSerializerMap.put(Boolean.class, BooleanSerializer.INSTANCE);
tempBaseSerializerMap.put(byte.class, ByteSerializer.INSTANCE);
tempBaseSerializerMap.put(Byte.class, ByteSerializer.INSTANCE);
tempBaseSerializerMap.put(short.class, ShortSerializer.INSTANCE);
tempBaseSerializerMap.put(Short.class, ShortSerializer.INSTANCE);
tempBaseSerializerMap.put(int.class, IntSerializer.INSTANCE);
tempBaseSerializerMap.put(Integer.class, IntSerializer.INSTANCE);
tempBaseSerializerMap.put(long.class, LongSerializer.INSTANCE);
tempBaseSerializerMap.put(Long.class, LongSerializer.INSTANCE);
tempBaseSerializerMap.put(float.class, FloatSerializer.INSTANCE);
tempBaseSerializerMap.put(Float.class, FloatSerializer.INSTANCE);
tempBaseSerializerMap.put(double.class, DoubleSerializer.INSTANCE);
tempBaseSerializerMap.put(Double.class, DoubleSerializer.INSTANCE);
tempBaseSerializerMap.put(char.class, CharSerializer.INSTANCE);
tempBaseSerializerMap.put(Character.class, CharSerializer.INSTANCE);
tempBaseSerializerMap.put(String.class, StringSerializer.INSTANCE);
}
public static synchronized void analyze(Set<Class<?>> protocolClassSet, GenerateOperation generateOperation) {
@@ -16,7 +16,7 @@ package com.zfoo.protocol.registration;
import com.zfoo.protocol.IPacket;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import com.zfoo.protocol.util.ReflectionUtils;
import io.netty.buffer.ByteBuf;
@@ -13,8 +13,8 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ArraySerializer;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.reflect.ArraySerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import java.lang.reflect.Field;
@@ -42,7 +42,7 @@ public class ArrayField implements IFieldRegistration {
@Override
public ISerializer serializer() {
return ArraySerializer.getInstance();
return ArraySerializer.INSTANCE;
}
public IFieldRegistration getArrayElementRegistration() {
@@ -13,7 +13,7 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
/**
* 一个包里所包含的变量还有这个变量的序列化器
@@ -13,7 +13,7 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
/**
* 标记性接口,所有协议里描述变量都要实现这个接口
@@ -13,8 +13,8 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.ListSerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import com.zfoo.protocol.serializer.reflect.ListSerializer;
import java.lang.reflect.Type;
@@ -36,7 +36,7 @@ public class ListField implements IFieldRegistration {
@Override
public ISerializer serializer() {
return ListSerializer.getInstance();
return ListSerializer.INSTANCE;
}
public IFieldRegistration getListElementRegistration() {
@@ -13,8 +13,8 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.MapSerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import com.zfoo.protocol.serializer.reflect.MapSerializer;
import java.lang.reflect.Type;
@@ -40,7 +40,7 @@ public class MapField implements IFieldRegistration {
@Override
public ISerializer serializer() {
return MapSerializer.getInstance();
return MapSerializer.INSTANCE;
}
public IFieldRegistration getMapKeyRegistration() {
@@ -13,8 +13,8 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.ObjectProtocolSerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import com.zfoo.protocol.serializer.reflect.ObjectProtocolSerializer;
/**
* @author jaysunxiao
@@ -39,6 +39,6 @@ public class ObjectProtocolField implements IFieldRegistration {
@Override
public ISerializer serializer() {
return ObjectProtocolSerializer.getInstance();
return ObjectProtocolSerializer.INSTANCE;
}
}
@@ -13,8 +13,8 @@
package com.zfoo.protocol.registration.field;
import com.zfoo.protocol.serializer.ISerializer;
import com.zfoo.protocol.serializer.SetSerializer;
import com.zfoo.protocol.serializer.reflect.ISerializer;
import com.zfoo.protocol.serializer.reflect.SetSerializer;
import java.lang.reflect.Type;
@@ -36,7 +36,7 @@ public class SetField implements IFieldRegistration {
@Override
public ISerializer serializer() {
return SetSerializer.getInstance();
return SetSerializer.INSTANCE;
}
public IFieldRegistration getSetElementRegistration() {
@@ -19,7 +19,7 @@ import com.zfoo.protocol.generate.GenerateProtocolPath;
import com.zfoo.protocol.model.Pair;
import com.zfoo.protocol.registration.ProtocolRegistration;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.serializer.*;
import com.zfoo.protocol.serializer.reflect.*;
import com.zfoo.protocol.util.ClassUtils;
import com.zfoo.protocol.util.FileUtils;
import com.zfoo.protocol.util.StringUtils;
@@ -52,20 +52,20 @@ public abstract class GenerateCsUtils {
FileUtils.createDirectory(PROTOCOL_OUTPUT_ROOT_PATH);
csSerializerMap = new HashMap<>();
csSerializerMap.put(BooleanSerializer.getInstance(), new CsBooleanSerializer());
csSerializerMap.put(ByteSerializer.getInstance(), new CsByteSerializer());
csSerializerMap.put(ShortSerializer.getInstance(), new CsShortSerializer());
csSerializerMap.put(IntSerializer.getInstance(), new CsIntSerializer());
csSerializerMap.put(LongSerializer.getInstance(), new CsLongSerializer());
csSerializerMap.put(FloatSerializer.getInstance(), new CsFloatSerializer());
csSerializerMap.put(DoubleSerializer.getInstance(), new CsDoubleSerializer());
csSerializerMap.put(CharSerializer.getInstance(), new CsCharSerializer());
csSerializerMap.put(StringSerializer.getInstance(), new CsStringSerializer());
csSerializerMap.put(ArraySerializer.getInstance(), new CsArraySerializer());
csSerializerMap.put(ListSerializer.getInstance(), new CsListSerializer());
csSerializerMap.put(SetSerializer.getInstance(), new CsSetSerializer());
csSerializerMap.put(MapSerializer.getInstance(), new CsMapSerializer());
csSerializerMap.put(ObjectProtocolSerializer.getInstance(), new CsObjectProtocolSerializer());
csSerializerMap.put(BooleanSerializer.INSTANCE, new CsBooleanSerializer());
csSerializerMap.put(ByteSerializer.INSTANCE, new CsByteSerializer());
csSerializerMap.put(ShortSerializer.INSTANCE, new CsShortSerializer());
csSerializerMap.put(IntSerializer.INSTANCE, new CsIntSerializer());
csSerializerMap.put(LongSerializer.INSTANCE, new CsLongSerializer());
csSerializerMap.put(FloatSerializer.INSTANCE, new CsFloatSerializer());
csSerializerMap.put(DoubleSerializer.INSTANCE, new CsDoubleSerializer());
csSerializerMap.put(CharSerializer.INSTANCE, new CsCharSerializer());
csSerializerMap.put(StringSerializer.INSTANCE, new CsStringSerializer());
csSerializerMap.put(ArraySerializer.INSTANCE, new CsArraySerializer());
csSerializerMap.put(ListSerializer.INSTANCE, new CsListSerializer());
csSerializerMap.put(SetSerializer.INSTANCE, new CsSetSerializer());
csSerializerMap.put(MapSerializer.INSTANCE, new CsMapSerializer());
csSerializerMap.put(ObjectProtocolSerializer.INSTANCE, new CsObjectProtocolSerializer());
}
public static void clear() {
@@ -19,10 +19,10 @@ import com.zfoo.protocol.registration.field.BaseField;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.registration.field.MapField;
import com.zfoo.protocol.registration.field.ObjectProtocolField;
import com.zfoo.protocol.serializer.IntSerializer;
import com.zfoo.protocol.serializer.LongSerializer;
import com.zfoo.protocol.serializer.ObjectProtocolSerializer;
import com.zfoo.protocol.serializer.StringSerializer;
import com.zfoo.protocol.serializer.reflect.IntSerializer;
import com.zfoo.protocol.serializer.reflect.LongSerializer;
import com.zfoo.protocol.serializer.reflect.ObjectProtocolSerializer;
import com.zfoo.protocol.serializer.reflect.StringSerializer;
import com.zfoo.protocol.util.StringUtils;
import java.lang.reflect.Field;
@@ -45,43 +45,43 @@ public class EnhanceMapSerializer implements IEnhanceSerializer {
// 直接在字节码里调用方法是为了减小生成字节码的体积,下面的代码去掉也不会有任何影响
if (keyRegistration instanceof BaseField) {
if (valueRegistration instanceof BaseField) {
if (keySerializer == IntSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
if (keySerializer == IntSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeIntIntMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == IntSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == IntSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeIntLongMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == IntSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == IntSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeIntStringMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeLongIntMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeLongLongMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeLongStringMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeStringIntMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeStringLongMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeStringStringMap($1, (Map){});", EnhanceUtils.byteBufUtils, objectStr));
return;
}
} else if (valueRegistration instanceof ObjectProtocolField) {
var valueProtocolRegistration = (ObjectProtocolField) valueRegistration;
if (keySerializer == IntSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
if (keySerializer == IntSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeIntPacketMap($1, (Map){}, {});", EnhanceUtils.byteBufUtils, objectStr, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeLongPacketMap($1, (Map){}, {});", EnhanceUtils.byteBufUtils, objectStr, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("{}.writeStringPacketMap($1, (Map){}, {});", EnhanceUtils.byteBufUtils, objectStr, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return;
}
@@ -123,43 +123,43 @@ public class EnhanceMapSerializer implements IEnhanceSerializer {
if (keyRegistration instanceof BaseField) {
if (valueRegistration instanceof BaseField) {
if (keySerializer == IntSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
if (keySerializer == IntSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readIntIntMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == IntSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == IntSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readIntLongMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == IntSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == IntSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readIntStringMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readLongIntMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readLongLongMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readLongStringMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == IntSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == IntSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readStringIntMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == LongSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == LongSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readStringLongMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == StringSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == StringSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readStringStringMap($1);", map, EnhanceUtils.byteBufUtils));
return map;
}
} else if (valueRegistration instanceof ObjectProtocolField) {
var valueProtocolRegistration = (ObjectProtocolField) valueRegistration;
if (keySerializer == IntSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
if (keySerializer == IntSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readIntPacketMap($1, {});", map, EnhanceUtils.byteBufUtils, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return map;
} else if (keySerializer == LongSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
} else if (keySerializer == LongSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readLongPacketMap($1, {});", map, EnhanceUtils.byteBufUtils, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return map;
} else if (keySerializer == StringSerializer.getInstance() && valueSerializer == ObjectProtocolSerializer.getInstance()) {
} else if (keySerializer == StringSerializer.INSTANCE && valueSerializer == ObjectProtocolSerializer.INSTANCE) {
builder.append(StringUtils.format("Map {} = {}.readStringPacketMap($1, {});", map, EnhanceUtils.byteBufUtils, EnhanceUtils.getProtocolRegistrationFieldNameByProtocolId(valueProtocolRegistration.getProtocolId())));
return map;
}
@@ -21,7 +21,7 @@ import com.zfoo.protocol.registration.IProtocolRegistration;
import com.zfoo.protocol.registration.ProtocolAnalysis;
import com.zfoo.protocol.registration.ProtocolRegistration;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.serializer.*;
import com.zfoo.protocol.serializer.reflect.*;
import com.zfoo.protocol.util.ClassUtils;
import com.zfoo.protocol.util.FileUtils;
import com.zfoo.protocol.util.IOUtils;
@@ -55,20 +55,20 @@ public abstract class GenerateJsUtils {
FileUtils.createDirectory(PROTOCOL_OUTPUT_ROOT_PATH);
jsSerializerMap = new HashMap<>();
jsSerializerMap.put(BooleanSerializer.getInstance(), new JsBooleanSerializer());
jsSerializerMap.put(ByteSerializer.getInstance(), new JsByteSerializer());
jsSerializerMap.put(ShortSerializer.getInstance(), new JsShortSerializer());
jsSerializerMap.put(IntSerializer.getInstance(), new JsIntSerializer());
jsSerializerMap.put(LongSerializer.getInstance(), new JsLongSerializer());
jsSerializerMap.put(FloatSerializer.getInstance(), new JsFloatSerializer());
jsSerializerMap.put(DoubleSerializer.getInstance(), new JsDoubleSerializer());
jsSerializerMap.put(CharSerializer.getInstance(), new JsCharSerializer());
jsSerializerMap.put(StringSerializer.getInstance(), new JsStringSerializer());
jsSerializerMap.put(ArraySerializer.getInstance(), new JsArraySerializer());
jsSerializerMap.put(ListSerializer.getInstance(), new JsListSerializer());
jsSerializerMap.put(SetSerializer.getInstance(), new JsSetSerializer());
jsSerializerMap.put(MapSerializer.getInstance(), new JsMapSerializer());
jsSerializerMap.put(ObjectProtocolSerializer.getInstance(), new JsObjectProtocolSerializer());
jsSerializerMap.put(BooleanSerializer.INSTANCE, new JsBooleanSerializer());
jsSerializerMap.put(ByteSerializer.INSTANCE, new JsByteSerializer());
jsSerializerMap.put(ShortSerializer.INSTANCE, new JsShortSerializer());
jsSerializerMap.put(IntSerializer.INSTANCE, new JsIntSerializer());
jsSerializerMap.put(LongSerializer.INSTANCE, new JsLongSerializer());
jsSerializerMap.put(FloatSerializer.INSTANCE, new JsFloatSerializer());
jsSerializerMap.put(DoubleSerializer.INSTANCE, new JsDoubleSerializer());
jsSerializerMap.put(CharSerializer.INSTANCE, new JsCharSerializer());
jsSerializerMap.put(StringSerializer.INSTANCE, new JsStringSerializer());
jsSerializerMap.put(ArraySerializer.INSTANCE, new JsArraySerializer());
jsSerializerMap.put(ListSerializer.INSTANCE, new JsListSerializer());
jsSerializerMap.put(SetSerializer.INSTANCE, new JsSetSerializer());
jsSerializerMap.put(MapSerializer.INSTANCE, new JsMapSerializer());
jsSerializerMap.put(ObjectProtocolSerializer.INSTANCE, new JsObjectProtocolSerializer());
}
public static void clear() {
@@ -21,7 +21,7 @@ import com.zfoo.protocol.registration.IProtocolRegistration;
import com.zfoo.protocol.registration.ProtocolAnalysis;
import com.zfoo.protocol.registration.ProtocolRegistration;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import com.zfoo.protocol.serializer.*;
import com.zfoo.protocol.serializer.reflect.*;
import com.zfoo.protocol.util.ClassUtils;
import com.zfoo.protocol.util.FileUtils;
import com.zfoo.protocol.util.IOUtils;
@@ -55,20 +55,20 @@ public abstract class GenerateLuaUtils {
FileUtils.createDirectory(PROTOCOL_OUTPUT_ROOT_PATH);
luaSerializerMap = new HashMap<>();
luaSerializerMap.put(BooleanSerializer.getInstance(), new LuaBooleanSerializer());
luaSerializerMap.put(ByteSerializer.getInstance(), new LuaByteSerializer());
luaSerializerMap.put(ShortSerializer.getInstance(), new LuaShortSerializer());
luaSerializerMap.put(IntSerializer.getInstance(), new LuaIntSerializer());
luaSerializerMap.put(LongSerializer.getInstance(), new LuaLongSerializer());
luaSerializerMap.put(FloatSerializer.getInstance(), new LuaFloatSerializer());
luaSerializerMap.put(DoubleSerializer.getInstance(), new LuaDoubleSerializer());
luaSerializerMap.put(CharSerializer.getInstance(), new LuaCharSerializer());
luaSerializerMap.put(StringSerializer.getInstance(), new LuaStringSerializer());
luaSerializerMap.put(ArraySerializer.getInstance(), new LuaArraySerializer());
luaSerializerMap.put(ListSerializer.getInstance(), new LuaListSerializer());
luaSerializerMap.put(SetSerializer.getInstance(), new LuaSetSerializer());
luaSerializerMap.put(MapSerializer.getInstance(), new LuaMapSerializer());
luaSerializerMap.put(ObjectProtocolSerializer.getInstance(), new LuaObjectProtocolSerializer());
luaSerializerMap.put(BooleanSerializer.INSTANCE, new LuaBooleanSerializer());
luaSerializerMap.put(ByteSerializer.INSTANCE, new LuaByteSerializer());
luaSerializerMap.put(ShortSerializer.INSTANCE, new LuaShortSerializer());
luaSerializerMap.put(IntSerializer.INSTANCE, new LuaIntSerializer());
luaSerializerMap.put(LongSerializer.INSTANCE, new LuaLongSerializer());
luaSerializerMap.put(FloatSerializer.INSTANCE, new LuaFloatSerializer());
luaSerializerMap.put(DoubleSerializer.INSTANCE, new LuaDoubleSerializer());
luaSerializerMap.put(CharSerializer.INSTANCE, new LuaCharSerializer());
luaSerializerMap.put(StringSerializer.INSTANCE, new LuaStringSerializer());
luaSerializerMap.put(ArraySerializer.INSTANCE, new LuaArraySerializer());
luaSerializerMap.put(ListSerializer.INSTANCE, new LuaListSerializer());
luaSerializerMap.put(SetSerializer.INSTANCE, new LuaSetSerializer());
luaSerializerMap.put(MapSerializer.INSTANCE, new LuaMapSerializer());
luaSerializerMap.put(ObjectProtocolSerializer.INSTANCE, new LuaObjectProtocolSerializer());
}
public static void clear() {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.ArrayField;
@@ -26,16 +26,7 @@ import java.lang.reflect.Array;
*/
public class ArraySerializer implements ISerializer {
private static final ArraySerializer SERIALIZER = new ArraySerializer();
private ArraySerializer() {
}
public static ArraySerializer getInstance() {
return SERIALIZER;
}
public static final ArraySerializer INSTANCE = new ArraySerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,15 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class BooleanSerializer implements ISerializer {
private static final BooleanSerializer SERIALIZER = new BooleanSerializer();
private BooleanSerializer() {
}
public static BooleanSerializer getInstance() {
return SERIALIZER;
}
public static final BooleanSerializer INSTANCE = new BooleanSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class ByteSerializer implements ISerializer {
private static final ByteSerializer SERIALIZER = new ByteSerializer();
private ByteSerializer() {
}
public static ByteSerializer getInstance() {
return SERIALIZER;
}
public static final ByteSerializer INSTANCE = new ByteSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class CharSerializer implements ISerializer {
private static final CharSerializer SERIALIZER = new CharSerializer();
private CharSerializer() {
}
public static CharSerializer getInstance() {
return SERIALIZER;
}
public static final CharSerializer INSTANCE = new CharSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,15 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class DoubleSerializer implements ISerializer {
private static final DoubleSerializer SERIALIZER = new DoubleSerializer();
private DoubleSerializer() {
}
public static DoubleSerializer getInstance() {
return SERIALIZER;
}
public static final DoubleSerializer INSTANCE = new DoubleSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class FloatSerializer implements ISerializer {
private static final FloatSerializer SERIALIZER = new FloatSerializer();
private FloatSerializer() {
}
public static FloatSerializer getInstance() {
return SERIALIZER;
}
public static final FloatSerializer INSTANCE = new FloatSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.registration.field.IFieldRegistration;
import io.netty.buffer.ByteBuf;
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class IntSerializer implements ISerializer {
private static final IntSerializer SERIALIZER = new IntSerializer();
private IntSerializer() {
}
public static IntSerializer getInstance() {
return SERIALIZER;
}
public static final IntSerializer INSTANCE = new IntSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -28,16 +28,7 @@ import java.util.List;
*/
public class ListSerializer implements ISerializer {
private static final ListSerializer SERIALIZER = new ListSerializer();
private ListSerializer() {
}
public static ListSerializer getInstance() {
return SERIALIZER;
}
public static final ListSerializer INSTANCE = new ListSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,15 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class LongSerializer implements ISerializer {
private static final LongSerializer SERIALIZER = new LongSerializer();
private LongSerializer() {
}
public static LongSerializer getInstance() {
return SERIALIZER;
}
public static final LongSerializer INSTANCE = new LongSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.collection.CollectionUtils;
@@ -29,17 +29,7 @@ import java.util.Map;
*/
public class MapSerializer implements ISerializer {
private static final MapSerializer SERIALIZER = new MapSerializer();
private MapSerializer() {
}
public static MapSerializer getInstance() {
return SERIALIZER;
}
public static final MapSerializer INSTANCE = new MapSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.IPacket;
import com.zfoo.protocol.ProtocolManager;
@@ -28,15 +28,7 @@ import io.netty.buffer.ByteBuf;
*/
public class ObjectProtocolSerializer implements ISerializer {
private static final ObjectProtocolSerializer SERIALIZER = new ObjectProtocolSerializer();
private ObjectProtocolSerializer() {
}
public static ObjectProtocolSerializer getInstance() {
return SERIALIZER;
}
public static final ObjectProtocolSerializer INSTANCE = new ObjectProtocolSerializer();
/**
* @param buffer ByteBuf
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.collection.CollectionUtils;
@@ -29,16 +29,7 @@ import java.util.Set;
*/
public class SetSerializer implements ISerializer {
private static final SetSerializer SERIALIZER = new SetSerializer();
private SetSerializer() {
}
public static SetSerializer getInstance() {
return SERIALIZER;
}
public static final SetSerializer INSTANCE = new SetSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class ShortSerializer implements ISerializer {
private static final ShortSerializer SERIALIZER = new ShortSerializer();
private ShortSerializer() {
}
public static ShortSerializer getInstance() {
return SERIALIZER;
}
public static final ShortSerializer INSTANCE = new ShortSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {
@@ -1,6 +1,5 @@
/*
* Copyright (C) 2020 The zfoo Authors
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at
*
@@ -9,9 +8,10 @@
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and limitations under the License.
*
*/
package com.zfoo.protocol.serializer;
package com.zfoo.protocol.serializer.reflect;
import com.zfoo.protocol.buffer.ByteBufUtils;
import com.zfoo.protocol.registration.field.IFieldRegistration;
@@ -23,16 +23,7 @@ import io.netty.buffer.ByteBuf;
*/
public class StringSerializer implements ISerializer {
private static final StringSerializer SERIALIZER = new StringSerializer();
private StringSerializer() {
}
public static StringSerializer getInstance() {
return SERIALIZER;
}
public static final StringSerializer INSTANCE = new StringSerializer();
@Override
public void writeObject(ByteBuf buffer, Object object, IFieldRegistration fieldRegistration) {