co.aikar.commands

## Class ForwardingCommand

- java.lang.Object
- - co.aikar.commands.BaseCommand
  - - co.aikar.commands.ForwardingCommand

    public class ForwardingCommand
    extends BaseCommand

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `execute(CommandIssuer issuer, String commandLabel, String[] args)`
`CommandOperationContext` `getLastCommandOperationContext()` Returns a reference to the last used CommandOperationContext.
`List<RegisteredCommand>` `getRegisteredCommands()`
`Set<String>` `getRequiredPermissions()`
`boolean` `hasPermission(CommandIssuer sender)`
`boolean` `hasPermission(Object issuer)`
`boolean` `requiresPermission(String permission)`
`List<String>` `tabComplete(CommandIssuer issuer, String alias, String[] args, boolean isAsync)` Gets the tab complete suggestions from a given command.

### Methods inherited from class co.aikar.commands.BaseCommand

`canExecute, doHelp, doHelp, getCommandHelp, getContextFlags, getCurrentCommandIssuer, getCurrentCommandManager, getDefaultRegisteredCommand, getExceptionHandler, getExecCommandLabel, getExecSubcommand, getName, getOrigArgs, help, help, setContextFlags, setExceptionHandler, showCommandHelp, showSyntax, tabComplete`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### getRegisteredCommands

    public List<RegisteredCommand> getRegisteredCommands()

Overrides:
  `getRegisteredCommands` in class `BaseCommand`

#### getLastCommandOperationContext

    public CommandOperationContext getLastCommandOperationContext()

Description copied from class: `BaseCommand`
Returns a reference to the last used CommandOperationContext. This method is ThreadLocal, in that it can only be used on a thread that has executed a command

Overrides:
  `getLastCommandOperationContext` in class `BaseCommand`
Returns:

#### getRequiredPermissions

    public Set<String> getRequiredPermissions()

Overrides:
  `getRequiredPermissions` in class `BaseCommand`

#### hasPermission

    public boolean hasPermission(Object issuer)

Overrides:
  `hasPermission` in class `BaseCommand`

#### requiresPermission

    public boolean requiresPermission(String permission)

Overrides:
  `requiresPermission` in class `BaseCommand`

#### hasPermission

    public boolean hasPermission(CommandIssuer sender)

Overrides:
  `hasPermission` in class `BaseCommand`

#### tabComplete

    public List<String> tabComplete(CommandIssuer issuer,
                                    String alias,
                                    String[] args,
                                    boolean isAsync)
                             throws IllegalArgumentException

Description copied from class: `BaseCommand`
Gets the tab complete suggestions from a given command. This will automatically find anything which is valid for the specified command through the command's implementation.

Overrides:
  `tabComplete` in class `BaseCommand`
Parameters:
  `issuer` - The issuer of the command.
  `alias` - The command name as entered by the user instead of the ACF registered name.
  `args` - All arguments entered by the user.
  `isAsync` - Whether this is run off of the main thread.
Returns:
  The possibilities to tab complete in no particular order.
Throws:
  `IllegalArgumentException`

#### execute

    public void execute(CommandIssuer issuer,
                        String commandLabel,
                        String[] args)

Overrides:
  `execute` in class `BaseCommand`