The CommandArgument class describes individual arguments to commands. It contains the following fields:
String name (available through the getName() method)
This is the name of the http parameter corresponding to this argument.
boolean required (available through the isRequired() method)
Indicates whether this argument is required. The intent is that the framework can check this field when routing a command and return a pre-defined error status to the client if a required field is missing.
Class ClassType (available through the getClassType() method)
This is used so the framework can convert the incoming text value to an appropriate object type.
Object defaultValue (available through the getDefaultValue() method)
The framework will substitute this object for the argument if the argument is missing from the command.
Boolean hidden (available through the isHidden() method)
The framework can log the retrieval and routing of commands and their parameters. Setting this field to true means the framework will not echo the value of this argument in the log file. This would be useful for passwords, and so on.
These fields are all declared as private and, since there are no setXXX() methods, cannot be changed after a CommandArgument object is constructed.