org.crsh.shell.impl.command.spi
Class ShellCommand<T>

java.lang.Object
  extended by org.crsh.shell.impl.command.spi.ShellCommand<T>
Direct Known Subclasses:
GroovyScriptShellCommand, ShellCommandImpl

public abstract class ShellCommand<T>
extends Object

A command as seen by the shell.


Constructor Summary
ShellCommand()
           
 
Method Summary
 CompletionMatch complete(RuntimeContext context, String line)
          Provide completions for the specified arguments.
 String describe(InvocationMatch<T> match, Format format)
           
 String describe(String line, Format format)
          Returns a description of the command or null if none can be found.
protected abstract  Completer getCompleter(RuntimeContext context)
          Returns a completer for this command.
abstract  CommandDescriptor<T> getDescriptor()
          Returns the command descriptor.
protected abstract  Command<?,?> resolveCommand(InvocationMatch<T> match)
          Resolve the real command for a specified invocation match.
 Command<?,?> resolveCommand(String line)
           
 CommandInvoker<?,?> resolveInvoker(Map<String,?> options, String subordinate, Map<String,?> subordinateOptions, List<?> arguments)
          Provides an invoker for the command line specified in a detyped manner.
 CommandInvoker<?,?> resolveInvoker(String line)
          Provides an invoker for the command line specified as a command line to parse.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ShellCommand

public ShellCommand()
Method Detail

getDescriptor

public abstract CommandDescriptor<T> getDescriptor()
Returns the command descriptor.

Returns:
the descriptor

getCompleter

protected abstract Completer getCompleter(RuntimeContext context)
                                   throws CommandCreationException
Returns a completer for this command.

Parameters:
context - the related runtime context
Returns:
the completer
Throws:
CommandCreationException - anything that would prevent completion to happen

resolveCommand

protected abstract Command<?,?> resolveCommand(InvocationMatch<T> match)
Resolve the real command for a specified invocation match.

Parameters:
match - the match
Returns:
the command

describe

public final String describe(InvocationMatch<T> match,
                             Format format)

complete

public final CompletionMatch complete(RuntimeContext context,
                                      String line)
                               throws CommandCreationException
Provide completions for the specified arguments.

Parameters:
context - the command context
line - the original command line arguments
Returns:
the completions
Throws:
CommandCreationException

describe

public final String describe(String line,
                             Format format)
Returns a description of the command or null if none can be found.

Parameters:
line - the usage line
format - the description format
Returns:
the description

resolveInvoker

public final CommandInvoker<?,?> resolveInvoker(String line)
                                         throws CommandCreationException
Provides an invoker for the command line specified as a command line to parse.

Parameters:
line - the command line arguments
Returns:
the command
Throws:
CommandCreationException

resolveCommand

public final Command<?,?> resolveCommand(String line)
                                  throws CommandCreationException
Throws:
CommandCreationException

resolveInvoker

public final CommandInvoker<?,?> resolveInvoker(Map<String,?> options,
                                                String subordinate,
                                                Map<String,?> subordinateOptions,
                                                List<?> arguments)
                                         throws CommandCreationException
Provides an invoker for the command line specified in a detyped manner.

Parameters:
options - the base options
subordinate - the subordinate command name, might null
subordinateOptions - the subordinate options
arguments - arguments
Returns:
the command
Throws:
CommandCreationException


Copyright © 2014 eXo Platform SAS. All Rights Reserved.