diff --git a/net/src/main/java/com/zfoo/net/config/model/NetConfig.java b/net/src/main/java/com/zfoo/net/config/model/NetConfig.java
index 565a326f..121d9ba8 100644
--- a/net/src/main/java/com/zfoo/net/config/model/NetConfig.java
+++ b/net/src/main/java/com/zfoo/net/config/model/NetConfig.java
@@ -42,6 +42,7 @@ public class NetConfig {
private boolean luaProtocol;
private boolean gdscriptProtocol;
private boolean cppProtocol;
+ private boolean goProtocol;
private boolean protobufProtocol;
/**
@@ -197,6 +198,14 @@ public class NetConfig {
this.typescriptProtocol = typescriptProtocol;
}
+ public boolean isGoProtocol() {
+ return goProtocol;
+ }
+
+ public void setGoProtocol(boolean goProtocol) {
+ this.goProtocol = goProtocol;
+ }
+
@Override
public boolean equals(Object o) {
if (this == o) {
diff --git a/net/src/main/java/com/zfoo/net/packet/service/PacketService.java b/net/src/main/java/com/zfoo/net/packet/service/PacketService.java
index 411b3119..60e95c5e 100644
--- a/net/src/main/java/com/zfoo/net/packet/service/PacketService.java
+++ b/net/src/main/java/com/zfoo/net/packet/service/PacketService.java
@@ -105,6 +105,9 @@ public class PacketService implements IPacketService {
if (netConfig.isCppProtocol()) {
generateOperation.getGenerateLanguages().add(CodeLanguage.Cpp);
}
+ if (netConfig.isGoProtocol()) {
+ generateOperation.getGenerateLanguages().add(CodeLanguage.Go);
+ }
if (netConfig.isProtobufProtocol()) {
generateOperation.getGenerateLanguages().add(CodeLanguage.Protobuf);
}
diff --git a/net/src/main/java/com/zfoo/net/schema/NetDefinitionParser.java b/net/src/main/java/com/zfoo/net/schema/NetDefinitionParser.java
index bfb71cc0..094b26b6 100644
--- a/net/src/main/java/com/zfoo/net/schema/NetDefinitionParser.java
+++ b/net/src/main/java/com/zfoo/net/schema/NetDefinitionParser.java
@@ -109,6 +109,7 @@ public class NetDefinitionParser implements BeanDefinitionParser {
resolvePlaceholder("lua-protocol", "luaProtocol", builder, element, parserContext);
resolvePlaceholder("gdscript-protocol", "gdscriptProtocol", builder, element, parserContext);
resolvePlaceholder("cpp-protocol", "cppProtocol", builder, element, parserContext);
+ resolvePlaceholder("go-protocol", "goProtocol", builder, element, parserContext);
resolvePlaceholder("protobuf-protocol", "protobufProtocol", builder, element, parserContext);
// 文件是否折叠
diff --git a/net/src/main/resources/net-1.0.xsd b/net/src/main/resources/net-1.0.xsd
index 4a22408c..6393c409 100644
--- a/net/src/main/resources/net-1.0.xsd
+++ b/net/src/main/resources/net-1.0.xsd
@@ -72,6 +72,7 @@
+