mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-08-07 10:22:32 +00:00
ref[protocol]: refactor field method
This commit is contained in:
@@ -279,8 +279,10 @@ public class CodeGenerateKotlin implements ICodeGenerate {
|
||||
for (var fieldNote : fieldNotes) {
|
||||
ktBuilder.append(fieldNote).append(LS);
|
||||
}
|
||||
var pair = ktSerializer(fieldRegistration.serializer()).fieldTypeValue(field, fieldRegistration);
|
||||
ktBuilder.append(StringUtils.format("var {}: {} = {}", fieldName, pair.getKey(), pair.getValue())).append(LS);
|
||||
var fieldTypeDefaultValue = ktSerializer(fieldRegistration.serializer()).fieldTypeDefaultValue(field, fieldRegistration);
|
||||
var fieldType = fieldTypeDefaultValue.getKey();
|
||||
var fieldDefaultValue = fieldTypeDefaultValue.getValue();
|
||||
ktBuilder.append(StringUtils.format("var {}: {} = {}", fieldName, fieldType, fieldDefaultValue)).append(LS);
|
||||
}
|
||||
return ktBuilder.toString();
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ public interface IKtSerializer {
|
||||
/**
|
||||
* 获取属性的类型,默认值
|
||||
*/
|
||||
Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration);
|
||||
Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration);
|
||||
|
||||
void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration);
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtArraySerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
var type = StringUtils.format("Array<{}>", CodeGenerateKotlin.toKotlinClassName(field.getType().getComponentType().getSimpleName()));
|
||||
return new Pair<>(type, "emptyArray()");
|
||||
}
|
||||
@@ -84,7 +84,7 @@ public class KtArraySerializer implements IKtSerializer {
|
||||
builder.append(StringUtils.format("val {} = buffer.readInt()", size)).append(LS);
|
||||
|
||||
GenerateProtocolFile.addTab(builder, deep);
|
||||
var pair = CodeGenerateKotlin.ktSerializer(arrayField.getArrayElementRegistration().serializer()).fieldTypeValue(field, arrayField.getArrayElementRegistration());
|
||||
var pair = CodeGenerateKotlin.ktSerializer(arrayField.getArrayElementRegistration().serializer()).fieldTypeDefaultValue(field, arrayField.getArrayElementRegistration());
|
||||
var defaultValue = pair.getValue();
|
||||
if (defaultValue.equals("null")) {
|
||||
defaultValue = StringUtils.format("{}()", typeName);
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtBoolSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Boolean", "false");
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtByteSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Byte", "0");
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtDoubleSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Double", "0.0");
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtFloatSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Float", "0f");
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtIntSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Int", "0");
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtListSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
var type = StringUtils.format("{}", CodeGenerateKotlin.toKotlinClassName(field.getGenericType().toString()));
|
||||
return new Pair<>(type, "emptyList()");
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtLongSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Long", "0");
|
||||
}
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtMapSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
var type = StringUtils.format("{}", CodeGenerateKotlin.toKotlinClassName(field.getGenericType().toString()));
|
||||
return new Pair<>(type, "emptyMap()");
|
||||
}
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtObjectProtocolSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
ObjectProtocolField objectProtocolField = (ObjectProtocolField) fieldRegistration;
|
||||
var protocolSimpleName = EnhanceObjectProtocolSerializer.getProtocolClassSimpleName(objectProtocolField.getProtocolId());
|
||||
var type = StringUtils.format("{}?", protocolSimpleName);
|
||||
|
||||
@@ -31,7 +31,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtSetSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
var type = StringUtils.format("{}", CodeGenerateKotlin.toKotlinClassName(field.getGenericType().toString()));
|
||||
return new Pair<>(type, "emptySet()");
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtShortSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("Short", "0");
|
||||
}
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ import static com.zfoo.protocol.util.FileUtils.LS;
|
||||
public class KtStringSerializer implements IKtSerializer {
|
||||
|
||||
@Override
|
||||
public Pair<String, String> fieldTypeValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
public Pair<String, String> fieldTypeDefaultValue(Field field, IFieldRegistration fieldRegistration) {
|
||||
return new Pair<>("String", "\"\"");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user