mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-10-15 08:17:24 +00:00
perf[protocol]: ruby code style
This commit is contained in:
1 parent
7f67827a3f
commit
beebb39842
19 files changed
+1134
-1130
No files matched your search
@@ -27,8 +27,7 @@ import java.lang.reflect.Field;
|
|||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
import static com.zfoo.protocol.util.StringUtils.TAB;
|
import static com.zfoo.protocol.util.StringUtils.*;
|
||||||
import static com.zfoo.protocol.util.StringUtils.TAB_ASCII;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author godotg
|
* @author godotg
|
||||||
@@ -48,6 +47,11 @@ public abstract class GenerateProtocolFile {
|
|||||||
return builder;
|
return builder;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static StringBuilder addTabWith2Space(StringBuilder builder, int deep) {
|
||||||
|
builder.append(SPACE.repeat(Math.max(0, deep * 2)));
|
||||||
|
return builder;
|
||||||
|
}
|
||||||
|
|
||||||
public static StringBuilder addTabAscii(StringBuilder builder, int deep) {
|
public static StringBuilder addTabAscii(StringBuilder builder, int deep) {
|
||||||
builder.append(TAB_ASCII.repeat(Math.max(0, deep)));
|
builder.append(TAB_ASCII.repeat(Math.max(0, deep)));
|
||||||
return builder;
|
return builder;
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import static com.zfoo.protocol.util.FileUtils.LS;
|
import static com.zfoo.protocol.util.FileUtils.LS;
|
||||||
import static com.zfoo.protocol.util.StringUtils.TAB;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author godotg
|
* @author godotg
|
||||||
@@ -303,7 +302,8 @@ public class CodeGenerateRuby implements ICodeGenerate {
|
|||||||
if (field.isAnnotationPresent(Compatible.class)) {
|
if (field.isAnnotationPresent(Compatible.class)) {
|
||||||
rbBuilder.append("if buffer.compatibleRead(beforeReadIndex, length)").append(LS);
|
rbBuilder.append("if buffer.compatibleRead(beforeReadIndex, length)").append(LS);
|
||||||
var compatibleReadObject = rbSerializer(fieldRegistration.serializer()).readObject(rbBuilder, 1, field, fieldRegistration);
|
var compatibleReadObject = rbSerializer(fieldRegistration.serializer()).readObject(rbBuilder, 1, field, fieldRegistration);
|
||||||
rbBuilder.append(TAB).append(StringUtils.format("packet.{} = {}", field.getName(), compatibleReadObject)).append(LS);
|
GenerateProtocolFile.addTabWith2Space(rbBuilder, 1);
|
||||||
|
rbBuilder.append(StringUtils.format("packet.{} = {}", field.getName(), compatibleReadObject)).append(LS);
|
||||||
rbBuilder.append("end").append(LS);
|
rbBuilder.append("end").append(LS);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ public class RubyArraySerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
if (CutDownArraySerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
if (CutDownArraySerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -43,29 +43,29 @@ public class RubyArraySerializer implements IRubySerializer {
|
|||||||
ArrayField arrayField = (ArrayField) fieldRegistration;
|
ArrayField arrayField = (ArrayField) fieldRegistration;
|
||||||
|
|
||||||
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("buffer.writeInt(0)").append(LS);
|
builder.append("buffer.writeInt(0)").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
|
|
||||||
builder.append("else").append(LS);
|
builder.append("else").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
||||||
|
|
||||||
String element = "element" + GenerateProtocolFile.localVariableId++;
|
String element = "element" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
||||||
CodeGenerateRuby.rbSerializer(arrayField.getArrayElementRegistration().serializer())
|
CodeGenerateRuby.rbSerializer(arrayField.getArrayElementRegistration().serializer())
|
||||||
.writeObject(builder, element, deep + 2, field, arrayField.getArrayElementRegistration());
|
.writeObject(builder, element, deep + 2, field, arrayField.getArrayElementRegistration());
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
var cutDown = CutDownArraySerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
var cutDown = CutDownArraySerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
||||||
if (cutDown != null) {
|
if (cutDown != null) {
|
||||||
return cutDown;
|
return cutDown;
|
||||||
@@ -79,21 +79,21 @@ public class RubyArraySerializer implements IRubySerializer {
|
|||||||
String i = "index" + GenerateProtocolFile.localVariableId++;
|
String i = "index" + GenerateProtocolFile.localVariableId++;
|
||||||
String size = "size" + GenerateProtocolFile.localVariableId++;
|
String size = "size" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
||||||
String readObject = CodeGenerateRuby.rbSerializer(arrayField.getArrayElementRegistration().serializer())
|
String readObject = CodeGenerateRuby.rbSerializer(arrayField.getArrayElementRegistration().serializer())
|
||||||
.readObject(builder, deep + 2, field, arrayField.getArrayElementRegistration());
|
.readObject(builder, deep + 2, field, arrayField.getArrayElementRegistration());
|
||||||
GenerateProtocolFile.addTab(builder, deep + 2);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 2);
|
||||||
builder.append(StringUtils.format("{}.push({})", result, readObject)).append(LS);
|
builder.append(StringUtils.format("{}.push({})", result, readObject)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyBoolSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeBool({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeBool({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyBoolSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readBool() ", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readBool() ", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyByteSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeByte({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeByte({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyByteSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readByte()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readByte()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyDoubleSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeDouble({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeDouble({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyDoubleSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readDouble()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readDouble()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyFloatSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeFloat({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeFloat({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyFloatSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readFloat()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readFloat()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyIntSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeInt({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeInt({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyIntSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readInt()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readInt()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ public class RubyListSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
if (CutDownListSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
if (CutDownListSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -43,29 +43,29 @@ public class RubyListSerializer implements IRubySerializer {
|
|||||||
ListField listField = (ListField) fieldRegistration;
|
ListField listField = (ListField) fieldRegistration;
|
||||||
|
|
||||||
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("buffer.writeInt(0)").append(LS);
|
builder.append("buffer.writeInt(0)").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
|
|
||||||
builder.append("else").append(LS);
|
builder.append("else").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
||||||
|
|
||||||
String element = "element" + GenerateProtocolFile.localVariableId++;
|
String element = "element" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
||||||
CodeGenerateRuby.rbSerializer(listField.getListElementRegistration().serializer())
|
CodeGenerateRuby.rbSerializer(listField.getListElementRegistration().serializer())
|
||||||
.writeObject(builder, element, deep + 2, field, listField.getListElementRegistration());
|
.writeObject(builder, element, deep + 2, field, listField.getListElementRegistration());
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
var cutDown = CutDownListSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
var cutDown = CutDownListSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
||||||
if (cutDown != null) {
|
if (cutDown != null) {
|
||||||
return cutDown;
|
return cutDown;
|
||||||
@@ -79,21 +79,21 @@ public class RubyListSerializer implements IRubySerializer {
|
|||||||
String i = "index" + GenerateProtocolFile.localVariableId++;
|
String i = "index" + GenerateProtocolFile.localVariableId++;
|
||||||
String size = "size" + GenerateProtocolFile.localVariableId++;
|
String size = "size" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
||||||
String readObject = CodeGenerateRuby.rbSerializer(listField.getListElementRegistration().serializer())
|
String readObject = CodeGenerateRuby.rbSerializer(listField.getListElementRegistration().serializer())
|
||||||
.readObject(builder, deep + 2, field, listField.getListElementRegistration());
|
.readObject(builder, deep + 2, field, listField.getListElementRegistration());
|
||||||
GenerateProtocolFile.addTab(builder, deep + 2);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 2);
|
||||||
builder.append(StringUtils.format("{}.push({})", result, readObject)).append(LS);
|
builder.append(StringUtils.format("{}.push({})", result, readObject)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyLongSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeLong({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeLong({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyLongSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readLong()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readLong()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,41 +35,41 @@ public class RubyMapSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
if (CutDownMapSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
if (CutDownMapSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
MapField mapField = (MapField) fieldRegistration;
|
MapField mapField = (MapField) fieldRegistration;
|
||||||
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("buffer.writeInt(0)").append(LS);
|
builder.append("buffer.writeInt(0)").append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("else").append(LS);
|
builder.append("else").append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
||||||
|
|
||||||
String key = "key" + GenerateProtocolFile.localVariableId++;
|
String key = "key" + GenerateProtocolFile.localVariableId++;
|
||||||
String value = "value" + GenerateProtocolFile.localVariableId++;
|
String value = "value" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("{}.each do |{}, {}|", objectStr, key, value)).append(LS);
|
builder.append(StringUtils.format("{}.each do |{}, {}|", objectStr, key, value)).append(LS);
|
||||||
CodeGenerateRuby.rbSerializer(mapField.getMapKeyRegistration().serializer())
|
CodeGenerateRuby.rbSerializer(mapField.getMapKeyRegistration().serializer())
|
||||||
.writeObject(builder, key, deep + 2, field, mapField.getMapKeyRegistration());
|
.writeObject(builder, key, deep + 2, field, mapField.getMapKeyRegistration());
|
||||||
CodeGenerateRuby.rbSerializer(mapField.getMapValueRegistration().serializer())
|
CodeGenerateRuby.rbSerializer(mapField.getMapValueRegistration().serializer())
|
||||||
.writeObject(builder, value, deep + 2, field, mapField.getMapValueRegistration());
|
.writeObject(builder, value, deep + 2, field, mapField.getMapValueRegistration());
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
var cutDown = CutDownMapSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
var cutDown = CutDownMapSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
||||||
if (cutDown != null) {
|
if (cutDown != null) {
|
||||||
return cutDown;
|
return cutDown;
|
||||||
@@ -80,15 +80,15 @@ public class RubyMapSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
builder.append(StringUtils.format("{} = Hash.new()", result)).append(LS);
|
builder.append(StringUtils.format("{} = Hash.new()", result)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
String size = "size" + GenerateProtocolFile.localVariableId++;
|
String size = "size" + GenerateProtocolFile.localVariableId++;
|
||||||
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
||||||
|
|
||||||
String i = "index" + GenerateProtocolFile.localVariableId++;
|
String i = "index" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
||||||
|
|
||||||
String keyObject = CodeGenerateRuby.rbSerializer(mapField.getMapKeyRegistration().serializer())
|
String keyObject = CodeGenerateRuby.rbSerializer(mapField.getMapKeyRegistration().serializer())
|
||||||
@@ -97,13 +97,13 @@ public class RubyMapSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
String valueObject = CodeGenerateRuby.rbSerializer(mapField.getMapValueRegistration().serializer())
|
String valueObject = CodeGenerateRuby.rbSerializer(mapField.getMapValueRegistration().serializer())
|
||||||
.readObject(builder, deep + 2, field, mapField.getMapValueRegistration());
|
.readObject(builder, deep + 2, field, mapField.getMapValueRegistration());
|
||||||
GenerateProtocolFile.addTab(builder, deep + 2);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 2);
|
||||||
|
|
||||||
builder.append(StringUtils.format("{}[{}] = {}", result, keyObject, valueObject)).append(LS);
|
builder.append(StringUtils.format("{}[{}] = {}", result, keyObject, valueObject)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -34,7 +34,7 @@ public class RubyObjectProtocolSerializer implements IRubySerializer {
|
|||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
ObjectProtocolField objectProtocolField = (ObjectProtocolField) fieldRegistration;
|
ObjectProtocolField objectProtocolField = (ObjectProtocolField) fieldRegistration;
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writePacket({}, {})", objectStr, objectProtocolField.getProtocolId())).append(LS);
|
builder.append(StringUtils.format("buffer.writePacket({}, {})", objectStr, objectProtocolField.getProtocolId())).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -42,7 +42,7 @@ public class RubyObjectProtocolSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
ObjectProtocolField objectProtocolField = (ObjectProtocolField) fieldRegistration;
|
ObjectProtocolField objectProtocolField = (ObjectProtocolField) fieldRegistration;
|
||||||
var result = "result" + GenerateProtocolFile.localVariableId++;
|
var result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readPacket({})", result, objectProtocolField.getProtocolId())).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readPacket({})", result, objectProtocolField.getProtocolId())).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ public class RubySetSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
if (CutDownSetSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
if (CutDownSetSerializer.getInstance().writeObject(builder, objectStr, field, fieldRegistration, CodeLanguage.Ruby)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -43,29 +43,29 @@ public class RubySetSerializer implements IRubySerializer {
|
|||||||
SetField setField = (SetField) fieldRegistration;
|
SetField setField = (SetField) fieldRegistration;
|
||||||
|
|
||||||
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
builder.append(StringUtils.format("if {}.nil? || {}.empty?", objectStr, objectStr)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("buffer.writeInt(0)").append(LS);
|
builder.append("buffer.writeInt(0)").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
|
|
||||||
builder.append("else").append(LS);
|
builder.append("else").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeInt({}.length)", objectStr)).append(LS);
|
||||||
|
|
||||||
String element = "element" + GenerateProtocolFile.localVariableId++;
|
String element = "element" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
builder.append(StringUtils.format("for {} in {}", element, objectStr)).append(LS);
|
||||||
CodeGenerateRuby.rbSerializer(setField.getSetElementRegistration().serializer())
|
CodeGenerateRuby.rbSerializer(setField.getSetElementRegistration().serializer())
|
||||||
.writeObject(builder, element, deep + 2, field, setField.getSetElementRegistration());
|
.writeObject(builder, element, deep + 2, field, setField.getSetElementRegistration());
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
var cutDown = CutDownSetSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
var cutDown = CutDownSetSerializer.getInstance().readObject(builder, field, fieldRegistration, CodeLanguage.Ruby);
|
||||||
if (cutDown != null) {
|
if (cutDown != null) {
|
||||||
return cutDown;
|
return cutDown;
|
||||||
@@ -79,21 +79,21 @@ public class RubySetSerializer implements IRubySerializer {
|
|||||||
String i = "index" + GenerateProtocolFile.localVariableId++;
|
String i = "index" + GenerateProtocolFile.localVariableId++;
|
||||||
String size = "size" + GenerateProtocolFile.localVariableId++;
|
String size = "size" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readInt()", size)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
builder.append(StringUtils.format("if {} > 0", size)).append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
builder.append(StringUtils.format("for {} in 0..{} - 1", i, size)).append(LS);
|
||||||
String readObject = CodeGenerateRuby.rbSerializer(setField.getSetElementRegistration().serializer())
|
String readObject = CodeGenerateRuby.rbSerializer(setField.getSetElementRegistration().serializer())
|
||||||
.readObject(builder, deep + 2, field, setField.getSetElementRegistration());
|
.readObject(builder, deep + 2, field, setField.getSetElementRegistration());
|
||||||
GenerateProtocolFile.addTab(builder, deep + 2);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 2);
|
||||||
builder.append(StringUtils.format("{}.add({})", result, readObject)).append(LS);
|
builder.append(StringUtils.format("{}.add({})", result, readObject)).append(LS);
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep + 1);
|
GenerateProtocolFile.addTabWith2Space(builder, deep + 1);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append("end").append(LS);
|
builder.append("end").append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ public class RubyShortSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeShort({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeShort({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -40,7 +40,7 @@ public class RubyShortSerializer implements IRubySerializer {
|
|||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
|
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readShort()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readShort()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,14 +32,14 @@ public class RubyStringSerializer implements IRubySerializer {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public void writeObject(StringBuilder builder, String objectStr, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("buffer.writeString({})", objectStr)).append(LS);
|
builder.append(StringUtils.format("buffer.writeString({})", objectStr)).append(LS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
public String readObject(StringBuilder builder, int deep, Field field, IFieldRegistration fieldRegistration) {
|
||||||
String result = "result" + GenerateProtocolFile.localVariableId++;
|
String result = "result" + GenerateProtocolFile.localVariableId++;
|
||||||
GenerateProtocolFile.addTab(builder, deep);
|
GenerateProtocolFile.addTabWith2Space(builder, deep);
|
||||||
builder.append(StringUtils.format("{} = buffer.readString()", result)).append(LS);
|
builder.append(StringUtils.format("{} = buffer.readString()", result)).append(LS);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because it is too large.
Load diff
@@ -1,7 +1,7 @@
|
|||||||
${protocol_note}
|
${protocol_note}
|
||||||
class ${protocol_name}
|
class ${protocol_name}
|
||||||
${protocol_field_accessor}
|
${protocol_field_accessor}
|
||||||
def initialize()
|
def initialize()
|
||||||
${protocol_field_definition}
|
${protocol_field_definition}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -2,28 +2,28 @@ ${protocol_imports}
|
|||||||
|
|
||||||
|
|
||||||
class ProtocolManager
|
class ProtocolManager
|
||||||
@@protocols = Array.new(32767)
|
@@protocols = Array.new(32767)
|
||||||
@@protocolIdMap = Hash.new()
|
@@protocolIdMap = Hash.new()
|
||||||
|
|
||||||
def self.initProtocol()
|
def self.initProtocol()
|
||||||
${protocol_manager_registrations}
|
${protocol_manager_registrations}
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.getProtocol(protocolId)
|
def self.getProtocol(protocolId)
|
||||||
return @@protocols[protocolId]
|
return @@protocols[protocolId]
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.write(buffer, packet)
|
def self.write(buffer, packet)
|
||||||
protocolId = @@protocolIdMap[packet.class]
|
protocolId = @@protocolIdMap[packet.class]
|
||||||
buffer.writeShort(protocolId)
|
buffer.writeShort(protocolId)
|
||||||
protocol = @@protocols[protocolId]
|
protocol = @@protocols[protocolId]
|
||||||
protocol.write(buffer, packet)
|
protocol.write(buffer, packet)
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.read(buffer)
|
def self.read(buffer)
|
||||||
protocolId = buffer.readShort()
|
protocolId = buffer.readShort()
|
||||||
protocol = @@protocols[protocolId]
|
protocol = @@protocols[protocolId]
|
||||||
packet = protocol.read(buffer)
|
packet = protocol.read(buffer)
|
||||||
return packet
|
return packet
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -1,27 +1,27 @@
|
|||||||
class ${protocol_name}Registration
|
class ${protocol_name}Registration
|
||||||
def protocolId()
|
def protocolId()
|
||||||
return ${protocol_id}
|
return ${protocol_id}
|
||||||
end
|
end
|
||||||
|
|
||||||
def write(buffer, packet)
|
def write(buffer, packet)
|
||||||
if packet.nil?
|
if packet.nil?
|
||||||
buffer.writeInt(0)
|
buffer.writeInt(0)
|
||||||
return
|
return
|
||||||
end
|
|
||||||
${protocol_write_serialization}
|
|
||||||
end
|
end
|
||||||
|
${protocol_write_serialization}
|
||||||
|
end
|
||||||
|
|
||||||
def read(buffer)
|
def read(buffer)
|
||||||
length = buffer.readInt()
|
length = buffer.readInt()
|
||||||
if length == 0
|
if length == 0
|
||||||
return nil
|
return nil
|
||||||
end
|
|
||||||
beforeReadIndex = buffer.getReadOffset()
|
|
||||||
packet = ${protocol_name}.new()
|
|
||||||
${protocol_read_deserialization}
|
|
||||||
if length > 0
|
|
||||||
buffer.setReadOffset(beforeReadIndex + length)
|
|
||||||
end
|
|
||||||
return packet
|
|
||||||
end
|
end
|
||||||
|
beforeReadIndex = buffer.getReadOffset()
|
||||||
|
packet = ${protocol_name}.new()
|
||||||
|
${protocol_read_deserialization}
|
||||||
|
if length > 0
|
||||||
|
buffer.setReadOffset(beforeReadIndex + length)
|
||||||
|
end
|
||||||
|
return packet
|
||||||
|
end
|
||||||
end
|
end
|
||||||
Reference in new issue
Block a user