From 883376fff0dd9fb2c212b779cb0553e263306acc Mon Sep 17 00:00:00 2001 From: maliming Date: Wed, 19 Jan 2022 10:31:30 +0800 Subject: [PATCH] Refactor GetCustomSteps. --- .../ProjectBuilding/AbpIoSourceCodeStore.cs | 2 +- .../ProjectBuilding/TemplateInfoProvider.cs | 4 +- .../Templates/App/AppNoLayersTemplate.cs | 29 ++++++++++++++ .../Templates/App/AppNolayersTemplate.cs | 16 -------- .../Templates/App/AppTemplateBase.cs | 38 +++++++++---------- 5 files changed, 51 insertions(+), 38 deletions(-) create mode 100644 framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs delete mode 100644 framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs index e93053db6e..1e11ecb2f9 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/AbpIoSourceCodeStore.cs @@ -278,7 +278,7 @@ public class AbpIoSourceCodeStore : ISourceCodeStore, ITransientDependency } var matches = Regex.Matches(stringBuilder.ToString(), - $"({AppTemplate.TemplateName}|{AppNolayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); + $"({AppTemplate.TemplateName}|{AppNoLayersTemplate.TemplateName}|{AppProTemplate.TemplateName}|{ModuleTemplate.TemplateName}|{ModuleProTemplate.TemplateName}|{ConsoleTemplate.TemplateName}|{WpfTemplate.TemplateName})-(.+).zip"); foreach (Match match in matches) { templateList.Add((match.Groups[1].Value, match.Groups[2].Value)); diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs index 49b8ef95ae..8e1504fb8f 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/TemplateInfoProvider.cs @@ -52,8 +52,8 @@ public class TemplateInfoProvider : ITemplateInfoProvider, ITransientDependency { case AppTemplate.TemplateName: return new AppTemplate(); - case AppNolayersTemplate.TemplateName: - return new AppNolayersTemplate(); + case AppNoLayersTemplate.TemplateName: + return new AppNoLayersTemplate(); case AppProTemplate.TemplateName: return new AppProTemplate(); case MicroserviceProTemplate.TemplateName: diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs new file mode 100644 index 0000000000..1c3e2284cb --- /dev/null +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNoLayersTemplate.cs @@ -0,0 +1,29 @@ +using System.Collections.Generic; +using Volo.Abp.Cli.ProjectBuilding.Building; + +namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; + +public class AppNoLayersTemplate : AppTemplateBase +{ + /// + /// "app". + /// + public const string TemplateName = "app-nolayers"; + + public AppNoLayersTemplate() + : base(TemplateName) + { + //TODO: Change URL + DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; + } + + public override IEnumerable GetCustomSteps(ProjectBuildContext context) + { + var steps = new List(); + + RandomizeSslPorts(context, steps); + RandomizeStringEncryption(context, steps); + + return steps; + } +} diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs deleted file mode 100644 index 44bd3dcda7..0000000000 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppNolayersTemplate.cs +++ /dev/null @@ -1,16 +0,0 @@ -namespace Volo.Abp.Cli.ProjectBuilding.Templates.App; - -public class AppNolayersTemplate : AppTemplateBase -{ - /// - /// "app". - /// - public const string TemplateName = "app-nolayers"; - - public AppNolayersTemplate() - : base(TemplateName) - { - //TODO: Change URL - DocumentUrl = CliConsts.DocsLink + "/en/abp/latest/Startup-Templates/Application"; - } -} diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs index 7ce9730e23..7d4aab5615 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ProjectBuilding/Templates/App/AppTemplateBase.cs @@ -43,7 +43,7 @@ public abstract class AppTemplateBase : TemplateInfo return steps; } - private void ConfigureTenantSchema(ProjectBuildContext context, List steps) + protected void ConfigureTenantSchema(ProjectBuildContext context, List steps) { if (context.BuildArgs.ExtraProperties.ContainsKey("separate-tenant-schema")) { @@ -71,7 +71,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private void SwitchDatabaseProvider(ProjectBuildContext context, List steps) + protected void SwitchDatabaseProvider(ProjectBuildContext context, List steps) { if (context.BuildArgs.DatabaseProvider == DatabaseProvider.MongoDb) { @@ -105,7 +105,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void DeleteUnrelatedProjects(ProjectBuildContext context, List steps) + protected void DeleteUnrelatedProjects(ProjectBuildContext context, List steps) { switch (context.BuildArgs.UiFramework) { @@ -170,7 +170,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private void ConfigurePublicWebSite(ProjectBuildContext context, List steps) + protected void ConfigurePublicWebSite(ProjectBuildContext context, List steps) { if (!context.BuildArgs.PublicWebSite) { @@ -206,7 +206,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void RemoveCmsKitDependenciesFromPackageJsonFiles(List steps) + protected static void RemoveCmsKitDependenciesFromPackageJsonFiles(List steps) { var adminCmsPackageInstalledProjectsPackageJsonFiles = new List { @@ -233,7 +233,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context) + protected bool IsCmsKitSupportedForTargetVersion(ProjectBuildContext context) { if (string.IsNullOrWhiteSpace(context.BuildArgs.Version)) { @@ -243,7 +243,7 @@ public abstract class AppTemplateBase : TemplateInfo return SemanticVersion.Parse(context.BuildArgs.Version) > SemanticVersion.Parse("4.2.9"); } - private static void ConfigureWithoutUi(ProjectBuildContext context, List steps) + protected void ConfigureWithoutUi(ProjectBuildContext context, List steps) { steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web")); steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.Web.Host")); @@ -263,7 +263,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void ConfigureWithBlazorUi(ProjectBuildContext context, List steps) + protected void ConfigureWithBlazorUi(ProjectBuildContext context, List steps) { context.Symbols.Add("ui:blazor"); @@ -286,7 +286,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void ConfigureWithBlazorServerUi(ProjectBuildContext context, List steps) + protected void ConfigureWithBlazorServerUi(ProjectBuildContext context, List steps) { context.Symbols.Add("ui:blazor-server"); @@ -312,7 +312,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void ConfigureWithMvcUi(ProjectBuildContext context, List steps) + protected void ConfigureWithMvcUi(ProjectBuildContext context, List steps) { context.Symbols.Add("ui:mvc"); @@ -334,7 +334,7 @@ public abstract class AppTemplateBase : TemplateInfo steps.Add(new RemoveProjectFromSolutionStep("MyCompanyName.MyProjectName.HttpApi.HostWithIds")); } - private static void ConfigureWithAngularUi(ProjectBuildContext context, List steps) + protected void ConfigureWithAngularUi(ProjectBuildContext context, List steps) { context.Symbols.Add("ui:angular"); @@ -362,12 +362,12 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void RemoveUnnecessaryPorts(ProjectBuildContext context, List steps) + protected void RemoveUnnecessaryPorts(ProjectBuildContext context, List steps) { steps.Add(new RemoveUnnecessaryPortsStep()); } - private static void RandomizeSslPorts(ProjectBuildContext context, List steps) + protected void RandomizeSslPorts(ProjectBuildContext context, List steps) { if (context.BuildArgs.ExtraProperties.ContainsKey("no-random-port")) { @@ -388,7 +388,7 @@ public abstract class AppTemplateBase : TemplateInfo ); } - private void ConfigureTieredArchitecture(ProjectBuildContext context, List steps) + protected void ConfigureTieredArchitecture(ProjectBuildContext context, List steps) { if (context.BuildArgs.ExtraProperties.ContainsKey(NewCommand.Options.Tiered.Long) || context.BuildArgs.ExtraProperties.ContainsKey("separate-identity-server")) @@ -397,17 +397,17 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void RandomizeStringEncryption(ProjectBuildContext context, List steps) + protected void RandomizeStringEncryption(ProjectBuildContext context, List steps) { steps.Add(new RandomizeStringEncryptionStep()); } - private static void UpdateNuGetConfig(ProjectBuildContext context, List steps) + protected void UpdateNuGetConfig(ProjectBuildContext context, List steps) { steps.Add(new UpdateNuGetConfigStep("/aspnet-core/NuGet.Config")); } - private void RemoveMigrations(ProjectBuildContext context, List steps) + protected void RemoveMigrations(ProjectBuildContext context, List steps) { if (string.IsNullOrWhiteSpace(context.BuildArgs.Version) || SemanticVersion.Parse(context.BuildArgs.Version) > new SemanticVersion(4, 1, 99)) @@ -425,7 +425,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void ChangeConnectionString(ProjectBuildContext context, List steps) + protected void ChangeConnectionString(ProjectBuildContext context, List steps) { if (context.BuildArgs.ConnectionString != null) { @@ -433,7 +433,7 @@ public abstract class AppTemplateBase : TemplateInfo } } - private static void CleanupFolderHierarchy(ProjectBuildContext context, List steps) + protected void CleanupFolderHierarchy(ProjectBuildContext context, List steps) { if ((context.BuildArgs.UiFramework == UiFramework.Mvc || context.BuildArgs.UiFramework == UiFramework.Blazor