From fe1ca658ca5afbe7cd74303bb9b75f1e735c0762 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 27 Oct 2020 15:14:03 +0800 Subject: refactor(back): Rename code generator. --- .../ErrorResponseCodeGenerator.csproj | 16 ----- ErrorResponseCodeGenerator/Program.cs | 68 ---------------------- ErrorResponseCodeGenerator/packages.lock.json | 24 -------- Timeline.ErrorCodes.CodeGenerator/Program.cs | 68 ++++++++++++++++++++++ .../Timeline.ErrorCodes.CodeGenerator.csproj | 16 +++++ .../packages.lock.json | 24 ++++++++ Timeline.sln | 12 ++-- 7 files changed, 114 insertions(+), 114 deletions(-) delete mode 100644 ErrorResponseCodeGenerator/ErrorResponseCodeGenerator.csproj delete mode 100644 ErrorResponseCodeGenerator/Program.cs delete mode 100644 ErrorResponseCodeGenerator/packages.lock.json create mode 100644 Timeline.ErrorCodes.CodeGenerator/Program.cs create mode 100644 Timeline.ErrorCodes.CodeGenerator/Timeline.ErrorCodes.CodeGenerator.csproj create mode 100644 Timeline.ErrorCodes.CodeGenerator/packages.lock.json diff --git a/ErrorResponseCodeGenerator/ErrorResponseCodeGenerator.csproj b/ErrorResponseCodeGenerator/ErrorResponseCodeGenerator.csproj deleted file mode 100644 index c8eb97f3..00000000 --- a/ErrorResponseCodeGenerator/ErrorResponseCodeGenerator.csproj +++ /dev/null @@ -1,16 +0,0 @@ - - - - Exe - netcoreapp3.1 - - - - - - - - - - - diff --git a/ErrorResponseCodeGenerator/Program.cs b/ErrorResponseCodeGenerator/Program.cs deleted file mode 100644 index 5ea8aaca..00000000 --- a/ErrorResponseCodeGenerator/Program.cs +++ /dev/null @@ -1,68 +0,0 @@ -using System; -using System.Linq; -using System.Reflection; - -namespace ErrorResponseCodeGenerator -{ - class Program - { - static void Main(string[] args) - { - var code = ""; - - void RecursiveAddErrorCode(Type type, bool root) - { - code += $@" - public static class {(root ? "ErrorResponse" : type.Name)} - {{ -"; - - foreach (var field in type.GetFields(BindingFlags.Public | BindingFlags.Static | BindingFlags.FlattenHierarchy) - .Where(fi => fi.IsLiteral && !fi.IsInitOnly && fi.FieldType == typeof(int))) - { - var path = type.FullName.Replace("+", ".").Replace("Timeline.Models.Http.ErrorCodes.", "") + "." + field.Name; - - code += $@" - public static CommonResponse {field.Name}(params object?[] formatArgs) - {{ - return new CommonResponse({"ErrorCodes." + path}, string.Format({path.Replace(".", "_")}, formatArgs)); - }} - - public static CommonResponse CustomMessage_{field.Name}(string message, params object?[] formatArgs) - {{ - return new CommonResponse({"ErrorCodes." + path}, string.Format(message, formatArgs)); - }} -"; - } - - foreach (var nestedType in type.GetNestedTypes()) - { - RecursiveAddErrorCode(nestedType, false); - } - - code += @" - } -"; - } - - RecursiveAddErrorCode(typeof(Timeline.Models.Http.ErrorCodes), true); - - code = @" -using static Timeline.Resources.Messages; - -namespace Timeline.Models.Http -{ -$ -} -".Replace("$", code); - - Console.WriteLine(code); - - TextCopy.Clipboard.SetText(code); - var oldColor = Console.ForegroundColor; - Console.ForegroundColor = ConsoleColor.Green; - Console.WriteLine("Code has copied to clipboard!"); - Console.ForegroundColor = oldColor; - } - } -} diff --git a/ErrorResponseCodeGenerator/packages.lock.json b/ErrorResponseCodeGenerator/packages.lock.json deleted file mode 100644 index 69cfee1e..00000000 --- a/ErrorResponseCodeGenerator/packages.lock.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "version": 1, - "dependencies": { - ".NETCoreApp,Version=v3.1": { - "TextCopy": { - "type": "Direct", - "requested": "[4.2.0, )", - "resolved": "4.2.0", - "contentHash": "NY2UAFIjBJj+3aABP5tyO6ooEdkJxIGtwRNqvMQKLmyIeZiyGvM4XYbkKNntyQlhyFhhfBww05C3D/0DdimfaQ==", - "dependencies": { - "Microsoft.Extensions.DependencyInjection.Abstractions": "3.1.4" - } - }, - "Microsoft.Extensions.DependencyInjection.Abstractions": { - "type": "Transitive", - "resolved": "3.1.4", - "contentHash": "AceHamXNKDMDwIoZqEoApLp8s3935wSC3VXrPaRWa0wWOaEcYdDlo1nWQ1zLiezoDmpJzV7FqDm53E0Ty/hEMg==" - }, - "timeline.errorcodes": { - "type": "Project" - } - } - } -} \ No newline at end of file diff --git a/Timeline.ErrorCodes.CodeGenerator/Program.cs b/Timeline.ErrorCodes.CodeGenerator/Program.cs new file mode 100644 index 00000000..d182de7c --- /dev/null +++ b/Timeline.ErrorCodes.CodeGenerator/Program.cs @@ -0,0 +1,68 @@ +using System; +using System.Linq; +using System.Reflection; + +namespace Timeline.ErrorCodes.CodeGenerator +{ + class Program + { + static void Main(string[] args) + { + var code = ""; + + void RecursiveAddErrorCode(Type type, bool root) + { + code += $@" + public static class {(root ? "ErrorResponse" : type.Name)} + {{ +"; + + foreach (var field in type.GetFields(BindingFlags.Public | BindingFlags.Static | BindingFlags.FlattenHierarchy) + .Where(fi => fi.IsLiteral && !fi.IsInitOnly && fi.FieldType == typeof(int))) + { + var path = type.FullName.Replace("+", ".").Replace("Timeline.Models.Http.ErrorCodes.", "") + "." + field.Name; + + code += $@" + public static CommonResponse {field.Name}(params object?[] formatArgs) + {{ + return new CommonResponse({"ErrorCodes." + path}, string.Format({path.Replace(".", "_")}, formatArgs)); + }} + + public static CommonResponse CustomMessage_{field.Name}(string message, params object?[] formatArgs) + {{ + return new CommonResponse({"ErrorCodes." + path}, string.Format(message, formatArgs)); + }} +"; + } + + foreach (var nestedType in type.GetNestedTypes()) + { + RecursiveAddErrorCode(nestedType, false); + } + + code += @" + } +"; + } + + RecursiveAddErrorCode(typeof(Timeline.Models.Http.ErrorCodes), true); + + code = @" +using static Timeline.Resources.Messages; + +namespace Timeline.Models.Http +{ +$ +} +".Replace("$", code); + + Console.WriteLine(code); + + TextCopy.ClipboardService.SetText(code); + var oldColor = Console.ForegroundColor; + Console.ForegroundColor = ConsoleColor.Green; + Console.WriteLine("Code has copied to clipboard!"); + Console.ForegroundColor = oldColor; + } + } +} diff --git a/Timeline.ErrorCodes.CodeGenerator/Timeline.ErrorCodes.CodeGenerator.csproj b/Timeline.ErrorCodes.CodeGenerator/Timeline.ErrorCodes.CodeGenerator.csproj new file mode 100644 index 00000000..c8eb97f3 --- /dev/null +++ b/Timeline.ErrorCodes.CodeGenerator/Timeline.ErrorCodes.CodeGenerator.csproj @@ -0,0 +1,16 @@ + + + + Exe + netcoreapp3.1 + + + + + + + + + + + diff --git a/Timeline.ErrorCodes.CodeGenerator/packages.lock.json b/Timeline.ErrorCodes.CodeGenerator/packages.lock.json new file mode 100644 index 00000000..69cfee1e --- /dev/null +++ b/Timeline.ErrorCodes.CodeGenerator/packages.lock.json @@ -0,0 +1,24 @@ +{ + "version": 1, + "dependencies": { + ".NETCoreApp,Version=v3.1": { + "TextCopy": { + "type": "Direct", + "requested": "[4.2.0, )", + "resolved": "4.2.0", + "contentHash": "NY2UAFIjBJj+3aABP5tyO6ooEdkJxIGtwRNqvMQKLmyIeZiyGvM4XYbkKNntyQlhyFhhfBww05C3D/0DdimfaQ==", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "3.1.4" + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions": { + "type": "Transitive", + "resolved": "3.1.4", + "contentHash": "AceHamXNKDMDwIoZqEoApLp8s3935wSC3VXrPaRWa0wWOaEcYdDlo1nWQ1zLiezoDmpJzV7FqDm53E0Ty/hEMg==" + }, + "timeline.errorcodes": { + "type": "Project" + } + } + } +} \ No newline at end of file diff --git a/Timeline.sln b/Timeline.sln index dfffe385..40a32ee9 100644 --- a/Timeline.sln +++ b/Timeline.sln @@ -6,10 +6,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Timeline", "Timeline\Timeli EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Timeline.Tests", "Timeline.Tests\Timeline.Tests.csproj", "{3D76D578-37BC-43C2-97BF-9C6DD3825F10}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ErrorResponseCodeGenerator", "ErrorResponseCodeGenerator\ErrorResponseCodeGenerator.csproj", "{F325F802-75DE-4527-A299-F668281B0E4D}" -EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Timeline.ErrorCodes", "Timeline.ErrorCodes\Timeline.ErrorCodes.csproj", "{1044E3B0-1010-47CA-956E-B6E8FE87055B}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Timeline.ErrorCodes.CodeGenerator", "Timeline.ErrorCodes.CodeGenerator\Timeline.ErrorCodes.CodeGenerator.csproj", "{D0263FD3-DC6A-4676-A746-FDAFCDACC5F2}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -24,14 +24,14 @@ Global {3D76D578-37BC-43C2-97BF-9C6DD3825F10}.Debug|Any CPU.Build.0 = Debug|Any CPU {3D76D578-37BC-43C2-97BF-9C6DD3825F10}.Release|Any CPU.ActiveCfg = Release|Any CPU {3D76D578-37BC-43C2-97BF-9C6DD3825F10}.Release|Any CPU.Build.0 = Release|Any CPU - {F325F802-75DE-4527-A299-F668281B0E4D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {F325F802-75DE-4527-A299-F668281B0E4D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {F325F802-75DE-4527-A299-F668281B0E4D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {F325F802-75DE-4527-A299-F668281B0E4D}.Release|Any CPU.Build.0 = Release|Any CPU {1044E3B0-1010-47CA-956E-B6E8FE87055B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {1044E3B0-1010-47CA-956E-B6E8FE87055B}.Debug|Any CPU.Build.0 = Debug|Any CPU {1044E3B0-1010-47CA-956E-B6E8FE87055B}.Release|Any CPU.ActiveCfg = Release|Any CPU {1044E3B0-1010-47CA-956E-B6E8FE87055B}.Release|Any CPU.Build.0 = Release|Any CPU + {D0263FD3-DC6A-4676-A746-FDAFCDACC5F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {D0263FD3-DC6A-4676-A746-FDAFCDACC5F2}.Debug|Any CPU.Build.0 = Debug|Any CPU + {D0263FD3-DC6A-4676-A746-FDAFCDACC5F2}.Release|Any CPU.ActiveCfg = Release|Any CPU + {D0263FD3-DC6A-4676-A746-FDAFCDACC5F2}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE -- cgit v1.2.3