diff --git a/Polonium.Tasks.csproj b/Polonium.Tasks.csproj index 2c8e0bb..a0a052c 100644 --- a/Polonium.Tasks.csproj +++ b/Polonium.Tasks.csproj @@ -8,7 +8,7 @@ Polonium.Tasks Polonium.Tasks true - 0.0.91 + 0.0.92-d true true diff --git a/src/GenerateProxyNodesTask.cs b/src/GenerateProxyNodesTask.cs index 9e7cd82..8dcb8b8 100644 --- a/src/GenerateProxyNodesTask.cs +++ b/src/GenerateProxyNodesTask.cs @@ -18,6 +18,9 @@ public class GenerateProxyNodesTask : Task [Required] public string OutputDirectory { get; set; } + + [Required] + public string TemplateDirectory { get; set; } [Required] public string AttributeName { get; set; } @@ -58,6 +61,19 @@ public class GenerateProxyNodesTask : Task string outputFile = Path.Combine(OutputDirectory, $"{className}.cs"); File.WriteAllText(outputFile, sb.ToString()); Log.LogMessage(MessageImportance.High, $"Generated proxy file: {outputFile}"); + + StringBuilder sbx = new StringBuilder(); + sbx + .AppendLine("// meta-default: true") + .AppendLine("using _BINDINGS_NAMESPACE_;") + .AppendLine("using System;") + .AppendLine("public partial class _CLASS_ : GlobalClasses._BASE_") + .AppendLine("{") + .AppendLine("}"); + if(!Directory.Exists($"{TemplateDirectory}/{className}")) + Directory.CreateDirectory($"{TemplateDirectory}/{className}"); + string templateFile = $"{TemplateDirectory}/{className}/Polonium_{className}.cs"; + File.WriteAllText(templateFile, sbx.ToString()); } } return true;