From bac14a426e8ba46df1deb1291c3ce2aa73b26f4f Mon Sep 17 00:00:00 2001 From: godotg Date: Tue, 12 Dec 2023 16:54:36 +0800 Subject: [PATCH] chore[generation]: log path to generated protocol file --- .../serializer/cpp/GenerateCppUtils.java | 11 +++++- .../serializer/csharp/GenerateCsUtils.java | 12 ++++-- .../serializer/gdscript/GenerateGdUtils.java | 13 +++++-- .../serializer/go/GenerateGoUtils.java | 14 ++++--- .../javascript/GenerateJsUtils.java | 14 ++++--- .../serializer/lua/GenerateLuaUtils.java | 37 ++++++++++++++----- .../serializer/protobuf/GeneratePbUtils.java | 12 +++++- .../serializer/python/GeneratePyUtils.java | 12 ++++-- .../typescript/GenerateTsUtils.java | 14 +++++-- .../generate/GenerateProtobufTesting.java | 4 +- 10 files changed, 104 insertions(+), 39 deletions(-) diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/cpp/GenerateCppUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/cpp/GenerateCppUtils.java index 325a3005..342c4915 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/cpp/GenerateCppUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/cpp/GenerateCppUtils.java @@ -32,6 +32,8 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -47,6 +49,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GenerateCppUtils { + private static final Logger logger = LoggerFactory.getLogger(GenerateCppUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoocpp"; @@ -111,7 +114,9 @@ public abstract class GenerateCppUtils { initProtocolBuilder.append(TAB).append(TAB).append(StringUtils.format("protocols[{}] = new {}Registration();", protocolId, protocol.protocolConstructor().getDeclaringClass().getSimpleName())).append(LS); } protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, headerBuilder.toString(), initProtocolBuilder.toString().trim()); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.h")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.h")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated C++ protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } /** @@ -145,7 +150,9 @@ public abstract class GenerateCppUtils { , protocolOutputPath , GenerateProtocolPath.getProtocolPath(protocolId) , protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated C++ protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/csharp/GenerateCsUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/csharp/GenerateCsUtils.java index 2545c99c..b3c537c3 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/csharp/GenerateCsUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/csharp/GenerateCsUtils.java @@ -28,6 +28,8 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -38,12 +40,12 @@ import java.util.Map; import static com.zfoo.protocol.util.FileUtils.LS; import static com.zfoo.protocol.util.StringUtils.TAB; -import static com.zfoo.protocol.util.StringUtils.TAB_ASCII; /** * @author godotg */ public abstract class GenerateCsUtils { + private static final Logger logger = LoggerFactory.getLogger(GenerateCsUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoocs"; @@ -113,7 +115,9 @@ public abstract class GenerateCsUtils { } var initProtocols = StringUtils.joinWith(StringUtils.COMMA + LS, initList.toArray()); protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, csBuilder.toString().trim(), initProtocols); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.cs")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.cs")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated C# protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } /** @@ -142,7 +146,9 @@ public abstract class GenerateCsUtils { , protocolOutputRootPath , GenerateProtocolPath.getCapitalizeProtocolPath(protocolId) , protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated C# protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String fieldDefinition(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/gdscript/GenerateGdUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/gdscript/GenerateGdUtils.java index 14f83e66..3b7172a9 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/gdscript/GenerateGdUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/gdscript/GenerateGdUtils.java @@ -31,6 +31,8 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -38,16 +40,15 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; -import java.util.stream.Collectors; import static com.zfoo.protocol.util.FileUtils.LS; -import static com.zfoo.protocol.util.StringUtils.TAB; import static com.zfoo.protocol.util.StringUtils.TAB_ASCII; /** * @author godotg */ public abstract class GenerateGdUtils { + private static final Logger logger = LoggerFactory.getLogger(GenerateGdUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoogd"; @@ -107,7 +108,9 @@ public abstract class GenerateGdUtils { } var initProtocols = StringUtils.joinWith(StringUtils.COMMA + LS, initList.toArray()); protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, importBuilder.toString().trim(), initProtocols); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.gd")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.gd")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated GdScript protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createGdProtocolFile(ProtocolRegistration registration) throws IOException { @@ -131,7 +134,9 @@ public abstract class GenerateGdUtils { toStringJsonTemplate, toStringParams, StringUtils.EMPTY_JSON, writeObject.trim(), readObject.trim()); var outputPath = StringUtils.format("{}/{}/{}.gd", protocolOutputPath, GenerateProtocolPath.getProtocolPath(protocolId), protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated GdScript protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String includeSubProtocol(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/go/GenerateGoUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/go/GenerateGoUtils.java index 42c2e07d..9d2b4561 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/go/GenerateGoUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/go/GenerateGoUtils.java @@ -18,17 +18,17 @@ import com.zfoo.protocol.collection.ArrayUtils; import com.zfoo.protocol.generate.GenerateOperation; import com.zfoo.protocol.generate.GenerateProtocolFile; import com.zfoo.protocol.generate.GenerateProtocolNote; -import com.zfoo.protocol.generate.GenerateProtocolPath; import com.zfoo.protocol.registration.IProtocolRegistration; import com.zfoo.protocol.registration.ProtocolRegistration; import com.zfoo.protocol.registration.field.IFieldRegistration; import com.zfoo.protocol.serializer.CodeLanguage; -import com.zfoo.protocol.serializer.cpp.GenerateCppUtils; import com.zfoo.protocol.serializer.reflect.*; import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -44,7 +44,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GenerateGoUtils { - + private static final Logger logger = LoggerFactory.getLogger(GenerateGoUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoogo"; public static String protocolOutputPath = StringUtils.EMPTY; @@ -105,7 +105,9 @@ public abstract class GenerateGoUtils { var protocolManagerTemplate = ClassUtils.getFileFromClassPathToString("go/ProtocolManagerTemplate.go"); protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, initProtocolBuilder.toString().trim()); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.go")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.go")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated Golang protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createGoProtocolFile(ProtocolRegistration registration) throws IOException { @@ -135,7 +137,9 @@ public abstract class GenerateGoUtils { } var outputPath = StringUtils.format("{}/{}.go", protocolOutputPath, protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated Golang protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String fieldDefinition(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/javascript/GenerateJsUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/javascript/GenerateJsUtils.java index 7253442f..3b232659 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/javascript/GenerateJsUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/javascript/GenerateJsUtils.java @@ -20,17 +20,17 @@ import com.zfoo.protocol.generate.GenerateProtocolNote; import com.zfoo.protocol.generate.GenerateProtocolPath; import com.zfoo.protocol.registration.IProtocolRegistration; import com.zfoo.protocol.registration.ProtocolRegistration; -import com.zfoo.protocol.registration.field.IFieldRegistration; import com.zfoo.protocol.serializer.CodeLanguage; import com.zfoo.protocol.serializer.reflect.*; import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; -import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -42,7 +42,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GenerateJsUtils { - + private static final Logger logger = LoggerFactory.getLogger(GenerateJsUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoojs"; public static String protocolOutputPath = StringUtils.EMPTY; @@ -108,7 +108,9 @@ public abstract class GenerateJsUtils { } protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, importBuilder.toString().trim(), StringUtils.EMPTY_JSON, initProtocolBuilder.toString().trim()); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.js")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.js")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated JavaScript protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createJsProtocolFile(ProtocolRegistration registration) throws IOException { @@ -130,7 +132,9 @@ public abstract class GenerateJsUtils { , fieldDefinition.trim(), protocolClazzName, protocolId, protocolClazzName , writeObject.trim(), protocolClazzName, protocolClazzName, readObject.trim(), protocolClazzName); var outputPath = StringUtils.format("{}/{}/{}.js", protocolOutputPath, GenerateProtocolPath.getProtocolPath(protocolId), protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated JavaScript protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String fieldDefinition(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/lua/GenerateLuaUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/lua/GenerateLuaUtils.java index 90134786..47e2bdd2 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/lua/GenerateLuaUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/lua/GenerateLuaUtils.java @@ -28,10 +28,15 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; -import java.util.*; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import static com.zfoo.protocol.util.FileUtils.LS; import static com.zfoo.protocol.util.StringUtils.TAB; @@ -40,7 +45,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GenerateLuaUtils { - + private static final Logger logger = LoggerFactory.getLogger(GenerateLuaUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoolua"; public static String protocolOutputPath = StringUtils.EMPTY; @@ -105,7 +110,9 @@ public abstract class GenerateLuaUtils { protocolBuilder.append(TAB).append(StringUtils.format("protocols[{}] = Protocols.{}", protocolId, protocolName)).append(LS); } protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, StringUtils.EMPTY_JSON, StringUtils.EMPTY_JSON, builderImports.toString().trim(), protocolBuilder.toString().trim()); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.lua")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.lua")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated Lua protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createLuaProtocolsInOneFile(List registrations) { @@ -156,10 +163,18 @@ public abstract class GenerateLuaUtils { builderProtocol.append(StringUtils.format("Protocols.{} = {}", protocolClazzName, protocolClazzName)).append(LS); } builderProtocol.append("return Protocols"); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "Protocols.lua")), builderProtocol.toString(), true); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolBase.lua")), builderProtocolBase.toString(), true); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolWriter.lua")), builderProtocolWriter.toString(), true); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolReader.lua")), builderProtocolReader.toString(), true); + var protocolsFile = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "Protocols.lua")); + var protocolBaseFile = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolBase.lua")); + var protocolWriterFile = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolWriter.lua")); + var protocolReaderFile = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolWriter.lua")); + FileUtils.writeStringToFile(protocolsFile, builderProtocol.toString(), true); + FileUtils.writeStringToFile(protocolBaseFile, builderProtocolBase.toString(), true); + FileUtils.writeStringToFile(protocolWriterFile, builderProtocolWriter.toString(), true); + FileUtils.writeStringToFile(protocolReaderFile, builderProtocolReader.toString(), true); + logger.info("Generated Lua protocols file:[{}] is in path:[{}]", protocolsFile.getName(), protocolsFile.getAbsolutePath()); + logger.info("Generated Lua protocol base file:[{}] is in path:[{}]", protocolBaseFile.getName(), protocolBaseFile.getAbsolutePath()); + logger.info("Generated Lua protocol writer file:[{}] is in path:[{}]", protocolWriterFile.getName(), protocolWriterFile.getAbsolutePath()); + logger.info("Generated Lua protocol reader file:[{}] is in path:[{}]", protocolReaderFile.getName(), protocolReaderFile.getAbsolutePath()); } public static void createProtocolManager(List protocolList) throws IOException { @@ -188,7 +203,9 @@ public abstract class GenerateLuaUtils { protocolBuilder.append(TAB).append(StringUtils.format("protocols[{}] = {}", protocolId, protocolName)).append(LS); } protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, StringUtils.EMPTY_JSON, StringUtils.EMPTY_JSON, fieldBuilder.toString().trim(), protocolBuilder.toString().trim()); - FileUtils.writeStringToFile(new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.lua")), protocolManagerTemplate, true); + var file = new File(StringUtils.format("{}/{}", protocolOutputRootPath, "ProtocolManager.lua")); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated Lua protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createLuaProtocolFile(ProtocolRegistration registration) { @@ -214,7 +231,9 @@ public abstract class GenerateLuaUtils { var outputPath = StringUtils.format("{}/{}/{}.lua" , protocolOutputRootPath, GenerateProtocolPath.getProtocolPath(protocolId), protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated Lua protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String valueOfMethod(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/protobuf/GeneratePbUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/protobuf/GeneratePbUtils.java index 448c94fb..0cad376e 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/protobuf/GeneratePbUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/protobuf/GeneratePbUtils.java @@ -23,6 +23,8 @@ import com.zfoo.protocol.serializer.protobuf.parser.Proto; import com.zfoo.protocol.serializer.protobuf.parser.ProtoParser; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.util.*; @@ -32,6 +34,8 @@ import static com.zfoo.protocol.util.StringUtils.TAB; public abstract class GeneratePbUtils { + private static final Logger logger = LoggerFactory.getLogger(GeneratePbUtils.class); + /** * EN: If the tag of a protobuf field exceeds this value, this field is considered to be a compatible protocol field * CN: 如果protobuf的字段的tag超过这个值,则视这个字段为需要兼容的协议字段 @@ -145,12 +149,16 @@ public abstract class GeneratePbUtils { } builder.append("}"); var filePath = StringUtils.format("{}/{}.java", messageOutputPath, outClassName); - FileUtils.writeStringToFile(new File(filePath), builder.toString(), false); + var file = new File(filePath); + FileUtils.writeStringToFile(file, builder.toString(), false); + logger.info("Generated java protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } else { for (var pbMessage : pbMessages) { var code = buildMessage(pbGenerateOperation, protos, proto, pbMessage); var filePath = StringUtils.format("{}/{}/{}.java", messageOutputPath, proto.getName(), pbMessage.getName()); - FileUtils.writeStringToFile(new File(filePath), code, false); + var file = new File(filePath); + FileUtils.writeStringToFile(file, code, false); + logger.info("Generated java protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } } } diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/python/GeneratePyUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/python/GeneratePyUtils.java index fdfc9c5a..18d2d533 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/python/GeneratePyUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/python/GeneratePyUtils.java @@ -20,7 +20,6 @@ import com.zfoo.protocol.generate.GenerateProtocolNote; import com.zfoo.protocol.generate.GenerateProtocolPath; import com.zfoo.protocol.registration.IProtocolRegistration; import com.zfoo.protocol.registration.ProtocolRegistration; -import com.zfoo.protocol.registration.field.IFieldRegistration; import com.zfoo.protocol.serializer.CodeLanguage; import com.zfoo.protocol.serializer.csharp.GenerateCsUtils; import com.zfoo.protocol.serializer.reflect.*; @@ -28,6 +27,8 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -42,6 +43,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GeneratePyUtils { + private static final Logger logger = LoggerFactory.getLogger(GeneratePyUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoopy"; @@ -108,7 +110,9 @@ public abstract class GeneratePyUtils { protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, importBuilder.toString().trim(), StringUtils.EMPTY_JSON, initProtocolBuilder.toString().trim()); var outputPath = StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.py"); - FileUtils.writeStringToFile(new File(outputPath), protocolManagerTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated Python protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } public static void createPyProtocolFile(ProtocolRegistration registration) { @@ -128,7 +132,9 @@ public abstract class GeneratePyUtils { protocolTemplate = StringUtils.format(protocolTemplate, classNote, protocolClazzName , fieldDefinition.trim(), protocolId, writeObject.trim(), protocolClazzName, readObject.trim()); var outputPath = StringUtils.format("{}/{}/{}.py", protocolOutputPath, GenerateProtocolPath.getProtocolPath(protocolId), protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated Python protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String fieldDefinition(ProtocolRegistration registration) { diff --git a/protocol/src/main/java/com/zfoo/protocol/serializer/typescript/GenerateTsUtils.java b/protocol/src/main/java/com/zfoo/protocol/serializer/typescript/GenerateTsUtils.java index d38b2d65..526bccfc 100644 --- a/protocol/src/main/java/com/zfoo/protocol/serializer/typescript/GenerateTsUtils.java +++ b/protocol/src/main/java/com/zfoo/protocol/serializer/typescript/GenerateTsUtils.java @@ -22,7 +22,6 @@ import com.zfoo.protocol.generate.GenerateProtocolPath; 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.CodeLanguage; import com.zfoo.protocol.serializer.enhance.EnhanceObjectProtocolSerializer; import com.zfoo.protocol.serializer.reflect.*; @@ -30,6 +29,8 @@ import com.zfoo.protocol.util.ClassUtils; import com.zfoo.protocol.util.FileUtils; import com.zfoo.protocol.util.ReflectionUtils; import com.zfoo.protocol.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import java.io.File; import java.io.IOException; @@ -44,6 +45,7 @@ import static com.zfoo.protocol.util.StringUtils.TAB; * @author godotg */ public abstract class GenerateTsUtils { + private static final Logger logger = LoggerFactory.getLogger(GenerateTsUtils.class); // custom configuration public static String protocolOutputRootPath = "zfoots"; @@ -109,10 +111,12 @@ public abstract class GenerateTsUtils { protocolManagerTemplate = StringUtils.format(protocolManagerTemplate, importBuilder.toString().trim(), initProtocolBuilder.toString().trim()); var outputPath = StringUtils.format("{}/{}", protocolOutputPath, "ProtocolManager.ts"); - FileUtils.writeStringToFile(new File(outputPath), protocolManagerTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolManagerTemplate, true); + logger.info("Generated TypeScript protocol manager file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } - public static void createTsProtocolFile(ProtocolRegistration registration) throws IOException { + public static void createTsProtocolFile(ProtocolRegistration registration) { // 初始化index GenerateProtocolFile.index.set(0); @@ -131,7 +135,9 @@ public abstract class GenerateTsUtils { protocolTemplate = StringUtils.format(protocolTemplate, importSubProtocol, classNote, protocolClazzName, fieldDefinition.trim() , protocolId, protocolClazzName, protocolClazzName, writeObject.trim(), protocolClazzName, protocolClazzName, readObject.trim(), protocolClazzName); var outputPath = StringUtils.format("{}/{}/{}.ts", protocolOutputPath, GenerateProtocolPath.getProtocolPath(protocolId), protocolClazzName); - FileUtils.writeStringToFile(new File(outputPath), protocolTemplate, true); + var file = new File(outputPath); + FileUtils.writeStringToFile(file, protocolTemplate, true); + logger.info("Generated TypeScript protocol file:[{}] is in path:[{}]", file.getName(), file.getAbsolutePath()); } private static String importSubProtocol(ProtocolRegistration registration) { diff --git a/protocol/src/test/java/com/zfoo/protocol/generate/GenerateProtobufTesting.java b/protocol/src/test/java/com/zfoo/protocol/generate/GenerateProtobufTesting.java index efd5f3c4..e1877eea 100644 --- a/protocol/src/test/java/com/zfoo/protocol/generate/GenerateProtobufTesting.java +++ b/protocol/src/test/java/com/zfoo/protocol/generate/GenerateProtobufTesting.java @@ -24,8 +24,8 @@ public class GenerateProtobufTesting { @Test public void generateClassFromProto() { var buildOption = new PbGenerateOperation(); - buildOption.setProtoPath("D:\\github\\zfoo\\protocol\\src\\test\\protobuf"); - buildOption.setOutputPath("D:\\github\\zfoo\\protocol\\src\\test\\zfoopb"); + buildOption.setProtoPath("src\\test\\protobuf"); + buildOption.setOutputPath("src\\test\\zfoopb"); buildOption.setJavaPackage("com.zfoo.protocol.generate.test"); // buildOption.setRecordClass(true); // buildOption.setOneProtocol(true);