From ba2993b236bb964185dea1ff07fd1b37b1e5cb97 Mon Sep 17 00:00:00 2001 From: Yunus Emre Kalkan Date: Mon, 3 Jun 2019 09:16:25 +0300 Subject: [PATCH] Write available commands on CLI help command resolves https://github.com/abpframework/abp/issues/1186 --- .../Volo/Abp/Cli/Commands/HelpCommand.cs | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs index 85e421588f..60f64f12a2 100644 --- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs +++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/HelpCommand.cs @@ -1,6 +1,8 @@ -using System.Threading.Tasks; +using System.Linq; +using System.Threading.Tasks; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; +using Microsoft.Extensions.Options; using Volo.Abp.Cli.Args; using Volo.Abp.DependencyInjection; @@ -9,10 +11,12 @@ namespace Volo.Abp.Cli.Commands public class HelpCommand : IConsoleCommand, ITransientDependency { public ILogger Logger { get; set; } + protected CliOptions CliOptions { get; } - public HelpCommand() + public HelpCommand(IOptions cliOptions) { Logger = NullLogger.Instance; + CliOptions = cliOptions.Value; } public Task ExecuteAsync(CommandLineArgs commandLineArgs) @@ -20,10 +24,16 @@ namespace Volo.Abp.Cli.Commands Logger.LogInformation(""); Logger.LogInformation("Usage:"); Logger.LogInformation(""); - Logger.LogInformation(" abp [options]"); + Logger.LogInformation(" abp [options]"); Logger.LogInformation(""); + Logger.LogInformation("Command List:"); - //TODO: Write available commands (not hard-coded, but from the CliOptions.Commands) + foreach (var commandKey in CliOptions.Commands.Keys.ToArray()) + { + Logger.LogInformation(" " + commandKey); + } + + Logger.LogInformation(""); return Task.CompletedTask; }