jcmdline
Class DefaultCmdLineHandler

java.lang.Object
  extended by jcmdline.AbstractHandlerDecorator
      extended by jcmdline.DefaultCmdLineHandler
All Implemented Interfaces:
CmdLineHandler

public class DefaultCmdLineHandler
extends AbstractHandlerDecorator

A Decorator class that implements command line options for the display of the command's usage. These options are (using the default 'strings' properties file):

    -?         prints usage to stdout (optional)
    -h         prints usage to stdout (optional)
    -h!        prints usage (including hidden options) to stdout (optional)
               (hidden)
 

Should any of these options be specified by the user, the usage (with or without the hidden options, as appropriate) will be displayed and System.exit(0) will be called.

Information on using CmdLineHandlers can be found in the jcmdline User Guide.

Version:
jcmdline Rel. 2.0.0 $Id: DefaultCmdLineHandler.java,v 1.2 2002/12/07 14:22:06 lglawrence Exp $
Author:
Lynne Lawrence
See Also:
Parameter, BasicCmdLineHandler, CmdLineParser

Constructor Summary
DefaultCmdLineHandler(CmdLineHandler handler)
          constructor
DefaultCmdLineHandler(java.lang.String cmdName, java.lang.String cmdDesc, java.util.Collection<Parameter<?>> options, java.util.Collection<Parameter<?>> args)
          constructor - uses the PosixCmdLineParser to parse the command line
DefaultCmdLineHandler(java.lang.String cmdName, java.lang.String cmdDesc, Parameter<?>[] options, Parameter<?>[] args)
          constructor - creates a new BasicCmdLineHandler as its delegate
DefaultCmdLineHandler(java.lang.String cmdName, java.lang.String cmdDesc, Parameter<?>[] options, Parameter<?>[] args, CmdLineParser parser)
          constructor - creates a new BasicCmdLineHandler as its delegate
 
Method Summary
protected  boolean processParsedOptions(boolean parseStatus)
          Called following the call to parse() of this class's contained CmdLineHandler.
 
Methods inherited from class jcmdline.AbstractHandlerDecorator
addArg, addOption, exitUsageError, getArg, getArgs, getCmdDesc, getCmdName, getCustomOptions, getDieOnParseError, getOption, getOptions, getParseError, getParser, getUsage, parse, setArgs, setCmdDesc, setCmdName, setCustomOptions, setDieOnParseError, setOptions, setParseError, setParser
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DefaultCmdLineHandler

public DefaultCmdLineHandler(CmdLineHandler handler)
constructor

Parameters:
handler - the CmdLineHandler to which most functionality will be delegated

DefaultCmdLineHandler

public DefaultCmdLineHandler(java.lang.String cmdName,
                             java.lang.String cmdDesc,
                             java.util.Collection<Parameter<?>> options,
                             java.util.Collection<Parameter<?>> args)
constructor - uses the PosixCmdLineParser to parse the command line

Parameters:
cmdName - the name of the command creating this BasicCmdLineHandler
cmdDesc - a short description of the command's purpose
options - a collection of Parameter objects, describing the command's command-line options
args - a collection of Parameter objects, describing the command's command-line arguments (what is left on the command line after all options and their parameters have been processed)
Throws:
java.lang.IllegalArgumentException - if any of the parameters are not correctly specified.
See Also:
setCmdName(), setCmdDesc(), setOptions(), PosixCmdLineParser

DefaultCmdLineHandler

public DefaultCmdLineHandler(java.lang.String cmdName,
                             java.lang.String cmdDesc,
                             Parameter<?>[] options,
                             Parameter<?>[] args)
constructor - creates a new BasicCmdLineHandler as its delegate

Parameters:
cmdName - the name of the command
cmdDesc - a short description of the command
options - a collection of Parameter objects, describing the command's command-line options
args - a collection of Parameter objects, describing the command's command-line arguments (what is left on the command line after all options and their parameters have been processed)
Throws:
java.lang.IllegalArgumentException - if any of the parameters are not correctly specified.
See Also:
BasicCmdLineHandler

DefaultCmdLineHandler

public DefaultCmdLineHandler(java.lang.String cmdName,
                             java.lang.String cmdDesc,
                             Parameter<?>[] options,
                             Parameter<?>[] args,
                             CmdLineParser parser)
constructor - creates a new BasicCmdLineHandler as its delegate

Parameters:
cmdName - the name of the command
cmdDesc - a short description of the command
options - a collection of Parameter objects, describing the command's command-line options
args - a collection of Parameter objects, describing the command's command-line arguments (what is left on the command line after all options and their parameters have been processed)
parser - a CmdLineParser to be used to parse the command line
Throws:
java.lang.IllegalArgumentException - if any of the parameters are not correctly specified.
See Also:
BasicCmdLineHandler
Method Detail

processParsedOptions

protected boolean processParsedOptions(boolean parseStatus)
Called following the call to parse() of this class's contained CmdLineHandler. This method checks for its options even if parseStatus is false.

Specified by:
processParsedOptions in class AbstractHandlerDecorator
Parameters:
parseStatus - The result of the parse() call to this class's contained CmdLineHandler.
Returns:
This method will call System.exit(0), rather than returning, if one of its supported options (-h, -h!, or -?) is specified. Otherwise, parseStatus is returned.