Skip to content

Commit b7fcb7b

Browse files
committed
AspDotNet: Usings and configurations added
1 parent ec7397b commit b7fcb7b

File tree

5 files changed

+19
-3
lines changed

5 files changed

+19
-3
lines changed

AspDotNet/GeneratorConfigurationController.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,15 @@ internal class GeneratorConfigurationController
66
{
77
public string RelativePath { get; set; }
88
public string Namespace { get; set; }
9-
public List<string> PreloadModules { get; set; }
9+
public List<string> Usings { get; }
10+
public List<string> PreloadModules { get; }
11+
public List<GeneratorConfigurationConfigureModule> Configures { get; }
1012

1113
public GeneratorConfigurationController()
1214
{
1315
this.PreloadModules = new List<string>();
16+
this.Configures = new List<GeneratorConfigurationConfigureModule>();
17+
this.Usings = new List<string>();
1418
}
1519
}
1620
}

AspDotNet/GeneratorConfigurationReader.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,9 @@ public ConfigurationBase Read(XElement rootElement, XElement configurationElemen
1919
this.ReadBase(rootElement, configuration);
2020
this.ReadBase(configurationElement, configuration);
2121
XmlConverter.MapList("PreloadModule", nameof(GeneratorConfigurationController.PreloadModules))
22+
.MapList("Using", nameof(GeneratorConfigurationController.Usings))
23+
.MapList("Configure", nameof(GeneratorConfigurationController.Configures))
24+
.Map("Configure", element => new GeneratorConfigurationConfigureModule(element.GetStringAttribute("Module"), element.Value))
2225
.Deserialize(configurationElement, configuration);
2326
return configuration;
2427
}

AspDotNet/GeneratorGenerator.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,20 @@ public void Generate(ConfigurationBase configuration)
4545
.Code;
4646
createCode.AddLine(Code.Declare(Code.Type("Guid"), "id", Code.Local("Guid").Method("NewGuid")))
4747
.AddLine(Code.Declare(Code.Type("MemoryOutput"), "output", Code.New(Code.Type("MemoryOutput"))))
48-
.AddLine(Code.Declare(Code.Type("Generator.Generator"), "generator", Code.New(Code.Type("Generator.Generator"))))
48+
.AddLine(Code.Declare(Code.Type("Generator"), "generator", Code.New(Code.Type("Generator"))))
4949
.AddLine(Code.Local("generator").Method("SetOutput", Code.Local("output")));
50+
foreach (string nameSpace in generator.Controller.Usings)
51+
{
52+
classTemplate.AddUsing(nameSpace);
53+
}
5054
foreach (string moduleType in generator.Controller.PreloadModules)
5155
{
5256
createCode.AddLine(Code.Local("generator").GenericMethod("PreloadModule", Code.Type(moduleType)));
5357
}
58+
foreach (GeneratorConfigurationConfigureModule configure in generator.Controller.Configures)
59+
{
60+
createCode.AddLine(Code.Local("generator").Method(configure.Module, Code.Lambda("x", Csharp.Code.Csharp("x." + configure.Action))));
61+
}
5462
createCode.AddLine(Code.Local("generator").Method("ParseConfiguration", Code.Local("configuration")))
5563
.AddLine(Code.Local("generator").Method("Run"))
5664
.AddBlankLine()

AspDotNet/KY.Generator.AspDotNet.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
</Compile>
5050
<Compile Include="AspDotNetModule.cs" />
5151
<Compile Include="GeneratorConfiguration.cs" />
52+
<Compile Include="GeneratorConfigurationConfigureModule.cs" />
5253
<Compile Include="GeneratorConfigurationController.cs" />
5354
<Compile Include="GeneratorConfigurationPreloadModule.cs" />
5455
<Compile Include="GeneratorConfigurationReader.cs" />

AspDotNet/Properties/AssemblyInfo.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,5 @@
3030
// You can specify all the values or you can default the Build and Revision Numbers
3131
// by using the '*' as shown below:
3232
// [assembly: AssemblyVersion("1.0.*")]
33-
[assembly: AssemblyVersion("0.7.1481")]
33+
[assembly: AssemblyVersion("0.7.1485")]
3434
[assembly: AssemblyFileVersion("0.7.0.0")]

0 commit comments

Comments
 (0)