common.cmdline
Class BooleanOption

java.lang.Object
  extended by common.cmdline.AbstractOption
      extended by common.cmdline.BooleanOption
All Implemented Interfaces:
Option

public class BooleanOption
extends AbstractOption

Option that takes Boolean values. A Boolean option does not expect any value on the command line, but it can have two long forms, one indicating that the value is true and one indicating that it's false. If a Boolean option occurs more than once on a command line, this class prints a warning and ignores all but the last occurrence.


Field Summary
 
Fields inherited from class common.cmdline.AbstractOption
DOC_OFFSET, longForms, occurred, shortForms
 
Constructor Summary
BooleanOption(java.lang.String shortForm, java.lang.String longForm, boolean def, java.lang.String docStr)
          Creates a Boolean option and registers it with the Parser class.
 
Method Summary
 boolean expectsValue()
          Returns true if this option expects a value on the command line.
 java.lang.String getUsageString()
          Returns a string that documents the option.
 boolean getValue()
          Returns the value specified on the command line for this option, or the default value if the option did not occur.
 void recordOccurrence(java.lang.String form, java.lang.String valueStr)
          This default implementation prints a warning if this option has already been occurred.
 
Methods inherited from class common.cmdline.AbstractOption
getLongForms, getShortForms, toString, wasPresent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BooleanOption

public BooleanOption(java.lang.String shortForm,
                     java.lang.String longForm,
                     boolean def,
                     java.lang.String docStr)
Creates a Boolean option and registers it with the Parser class.

Parameters:
shortForm - single-character flag indicating that the value is true, or null for an option with no short form
longForm - long form indicating that the value is true, or null for an option with no long form. If a long form foo is specified, then a second long form nofoo is also defined to indicate that the option value is false.
def - default value to return if the option does not occur
docStr - short (preferably less than 40 characters) string specifying what happens when this option is true
Method Detail

expectsValue

public boolean expectsValue()
Description copied from interface: Option
Returns true if this option expects a value on the command line.


recordOccurrence

public void recordOccurrence(java.lang.String form,
                             java.lang.String valueStr)
Description copied from class: AbstractOption
This default implementation prints a warning if this option has already been occurred. It also sets the occurred member variable to true. However, it does not parse or record the value.

Specified by:
recordOccurrence in interface Option
Overrides:
recordOccurrence in class AbstractOption
Parameters:
form - specifies the particular long or short form of the option that was used
valueStr - the given value, or null if no value was given. The parser will only pass null for this parameter if expectsValue returns false; otherwise, if the value is missing, the parser will not call this method.

getUsageString

public java.lang.String getUsageString()
Description copied from interface: Option
Returns a string that documents the option. This string should fit on one 80-column line.


getValue

public boolean getValue()
Returns the value specified on the command line for this option, or the default value if the option did not occur.