# Class: com.pnfsoftware.jeb.util.interpreter.AbstractCommandHandler

Skeleton for a command handler.

## Constructor: AbstractCommandHandler
- parameter: `parent`, type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`
- parameter: `name`, type: `java.lang.String`


## Constructor: AbstractCommandHandler
- parameter: `parent`, type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`
- parameter: `name`, type: `java.lang.String`
- parameter: `help`, type: `java.lang.String`


## Constructor: AbstractCommandHandler
- parameter: `parent`, type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`
- parameter: `name`, type: `java.lang.String`
- parameter: `paramNames`, type: `java.lang.String[]`
- parameter: `help`, type: `java.lang.String`
- parameter: `helpDetails`, type: `java.lang.String`


## Constructor: AbstractCommandHandler
- parameter: `parent`, type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`
- parameter: `name`, type: `java.lang.String`
- parameter: `params`, type: `com.pnfsoftware.jeb.util.interpreter.CommandParameter[]`
- parameter: `help`, type: `java.lang.String`
- parameter: `helpDetails`, type: `java.lang.String`


## Protected Field: help
Type: `java.lang.String`

## Protected Field: helpDetails
Type: `java.lang.String`

## Protected Field: name
Type: `java.lang.String`

## Protected Field: params
Type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.CommandParameter>`

## Protected Field: parent
Type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`

## Method: addParameter
- parameter: `paramName`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.util.interpreter.AbstractCommandHandler`


## Method: addParameter
- parameter: `parameter`, type: `com.pnfsoftware.jeb.util.interpreter.CommandParameter`
- return type: `com.pnfsoftware.jeb.util.interpreter.AbstractCommandHandler`


## Method: getChildren
- return type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.ICommandNode>`


## Method: getHelp
- return type: `java.lang.String`


## Method: getHelpDetails
- return type: `java.lang.String`


## Method: getName
- return type: `java.lang.String`


## Method: getOptions
- return type: `int`


## Method: getParameterIndex
- parameter: `paramName`, type: `java.lang.String`
- parameter: `prefix`, type: `java.lang.String`
- return type: `int`


## Method: getParameters
- return type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.CommandParameter>`


## Method: getParent
- return type: `com.pnfsoftware.jeb.util.interpreter.ICommandManager`


## Method: parseInputToken
- parameter: `tokens`, type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.InputToken>`
- return type: `com.pnfsoftware.jeb.util.interpreter.InputToken[]`


## Method: parseInputToken
- parameter: `tokens`, type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.InputToken>`
- parameter: `failOnErrors`, type: `boolean`
- return type: `com.pnfsoftware.jeb.util.interpreter.InputToken[]`

Description: Assign the inputToken value in the same index as inner [CommandParameter](CommandParameter) list. Note that the result array can have a bigger size than inner [CommandParameter](CommandParameter) list if the last [CommandParameter](CommandParameter) item allow Multiple parameters.
parameter: failOnErrors: set to false if you allow missing parameter after a prefixed parameter            \(used for autocompletion\) or missing mandatory parameters

## Protected Method: setHelp
- parameter: `help`, type: `java.lang.String`


## Protected Method: setName
- parameter: `name`, type: `java.lang.String`


## Method: setOptions
- parameter: `options`, type: `int`
- return type: `com.pnfsoftware.jeb.util.interpreter.AbstractCommandHandler`


## Method: toString
- return type: `java.lang.String`


## Static Method: getParameter
- parameter: `tokens`, type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.InputToken>`
- parameter: `i`, type: `int`
- return type: `java.lang.String`

Description: Get a parameter.
parameter: tokens: 
parameter: i: 
return: the parameter, null on error

## Static Method: getParameterSafe
- parameter: `tokens`, type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.InputToken>`
- parameter: `i`, type: `int`
- return type: `java.lang.String`

Description: Get a parameter, never return null.
parameter: tokens: 
parameter: i: 
return: the parameter, or the empty string on error

## Static Method: getToken
- parameter: `tokens`, type: `java.util.List<com.pnfsoftware.jeb.util.interpreter.InputToken>`
- parameter: `i`, type: `int`
- return type: `com.pnfsoftware.jeb.util.interpreter.InputToken`


