From 8d0adc1651117993e93bc3452e2c3746011e0ac2 Mon Sep 17 00:00:00 2001 From: Mark Pollack Date: Fri, 6 Apr 2012 17:55:17 -0400 Subject: [PATCH] SHL-6 - Spring Shell does not support "help" --- .../org/springframework/shell/Bootstrap.java | 4 +-- .../shell/commands/HelpCommands.java | 27 +++++++++++++++++++ 2 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/springframework/shell/commands/HelpCommands.java diff --git a/src/main/java/org/springframework/shell/Bootstrap.java b/src/main/java/org/springframework/shell/Bootstrap.java index 3a9557d5..5f2c141d 100644 --- a/src/main/java/org/springframework/shell/Bootstrap.java +++ b/src/main/java/org/springframework/shell/Bootstrap.java @@ -91,14 +91,14 @@ public class Bootstrap { Map commands = ctx.getBeansOfType(CommandMarker.class); for (CommandMarker command : commands.values()) { - System.out.println("Registgering command " + command); + System.out.println("Registering command " + command); shell.getSimpleParser().add(command); } Map converters = ctx.getBeansOfType(Converter.class); for (Converter converter : converters.values()) { - System.out.println("Registgering converter " + converter); + System.out.println("Registering converter " + converter); shell.getSimpleParser().add(converter); } diff --git a/src/main/java/org/springframework/shell/commands/HelpCommands.java b/src/main/java/org/springframework/shell/commands/HelpCommands.java new file mode 100644 index 00000000..39cd7fac --- /dev/null +++ b/src/main/java/org/springframework/shell/commands/HelpCommands.java @@ -0,0 +1,27 @@ +package org.springframework.shell.commands; + +import org.springframework.roo.shell.CliCommand; +import org.springframework.roo.shell.CliOption; +import org.springframework.roo.shell.CommandMarker; +import org.springframework.roo.shell.SimpleParser; +import org.springframework.stereotype.Component; + +/** + * Provides a listing of commands known to the shell. + * + * @author Ben Alex + * @author Mark Pollack + * + */ +@Component +public class HelpCommands extends SimpleParser implements CommandMarker { + + + // Taken from SimpleParserComponent in the Roo code base + @Override + @CliCommand(value = "help", help = "Shows system help") + public void obtainHelp( + @CliOption(key = { "", "command" }, optionContext = "availableCommands", help = "Command name to provide help for") final String buffer) { + super.obtainHelp(buffer); + } +}