26 lines
882 B
C#
26 lines
882 B
C#
|
namespace Processor.Generators;
|
|||
|
|
|||
|
public static class Generator
|
|||
|
{
|
|||
|
private static readonly Dictionary<Type, IGenerator> GENERATORS = new();
|
|||
|
private static readonly IGenerator VOID_GENERATOR = new VoidGenerator();
|
|||
|
|
|||
|
public static IGenerator Get(Type genType) => genType switch
|
|||
|
{
|
|||
|
Type.DOTNET => GENERATORS.ContainsKey(genType) ? GENERATORS[genType] : GENERATORS[genType] = new DotnetBigFile(),
|
|||
|
|
|||
|
_ => VOID_GENERATOR,
|
|||
|
};
|
|||
|
|
|||
|
public static async Task TriggerAllAsync()
|
|||
|
{
|
|||
|
var dotnetEnabled = await AppSettings.GetGeneratorDotnetEnabled();
|
|||
|
var godotEnabled = await AppSettings.GetGeneratorGodotEnabled();
|
|||
|
|
|||
|
if (dotnetEnabled)
|
|||
|
await Generator.Get(Type.DOTNET).GenerateAsync();
|
|||
|
|
|||
|
if(godotEnabled)
|
|||
|
await Generator.Get(Type.GODOT).GenerateAsync();
|
|||
|
}
|
|||
|
}
|