26 lines
1002 B
C#
26 lines
1002 B
C#
namespace UnrealSharpBuildTool.Actions;
|
|
|
|
public abstract class BuildToolAction
|
|
{
|
|
public static bool InitializeAction()
|
|
{
|
|
BuildToolAction buildToolAction = Program.BuildToolOptions.Action switch
|
|
{
|
|
BuildAction.Build => new BuildUserSolution(),
|
|
BuildAction.Clean => new CleanSolution(),
|
|
BuildAction.GenerateProject => new GenerateProject(),
|
|
BuildAction.UpdateProjectDependencies => new UpdateProjectDependencies(),
|
|
BuildAction.Rebuild => new RebuildSolution(),
|
|
BuildAction.Weave => new WeaveProject(),
|
|
BuildAction.PackageProject => new PackageProject(),
|
|
BuildAction.GenerateSolution => new GenerateSolution(),
|
|
BuildAction.BuildWeave => new BuildWeave(),
|
|
_ => throw new Exception($"Can't find build action with name \"{Program.BuildToolOptions.Action}\"")
|
|
};
|
|
|
|
return buildToolAction.RunAction();
|
|
}
|
|
|
|
public abstract bool RunAction();
|
|
}
|