gnu.getopt

Class LongOpt

public class LongOpt extends Object

This object represents the definition of a long option in the Java port of GNU getopt. An array of LongOpt objects is passed to the Getopt object to define the list of valid long options for a given parsing session. Refer to the getopt documentation for details on the format of long options.

Version: 1.0.5

Author: Aaron M. Renn (arenn@urbanophile.com)

See Also: Getopt

Field Summary
protected StringBufferflag
If this variable is not null, then the value stored in "val" is stored here when this long option is encountered.
protected inthas_arg
Indicates whether the option has no argument, a required argument, or an optional argument.
protected Stringname
The name of the long option
static intNO_ARGUMENT
Constant value used for the "has_arg" constructor argument.
static intOPTIONAL_ARGUMENT
Constant value used for the "has_arg" constructor argument.
static intREQUIRED_ARGUMENT
Constant value used for the "has_arg" constructor argument.
protected intval
The value to store in "flag" if flag is not null, otherwise the equivalent short option character for this long option.
Constructor Summary
LongOpt(String name, int has_arg, StringBuffer flag, int val)
Create a new LongOpt object with the given parameter values.
Method Summary
StringBuffergetFlag()
Returns the value of the 'flag' field for this long option
intgetHasArg()
Returns the value set for the 'has_arg' field for this long option
StringgetName()
Returns the name of this LongOpt as a String
intgetVal()
Returns the value of the 'val' field for this long option

Field Detail

flag

protected StringBuffer flag
If this variable is not null, then the value stored in "val" is stored here when this long option is encountered. If this is null, the value stored in "val" is treated as the name of an equivalent short option.

has_arg

protected int has_arg
Indicates whether the option has no argument, a required argument, or an optional argument.

name

protected String name
The name of the long option

NO_ARGUMENT

public static final int NO_ARGUMENT
Constant value used for the "has_arg" constructor argument. This value indicates that the option takes no argument.

OPTIONAL_ARGUMENT

public static final int OPTIONAL_ARGUMENT
Constant value used for the "has_arg" constructor argument. This value indicates that the option takes an argument that is optional.

REQUIRED_ARGUMENT

public static final int REQUIRED_ARGUMENT
Constant value used for the "has_arg" constructor argument. This value indicates that the option takes an argument that is required.

val

protected int val
The value to store in "flag" if flag is not null, otherwise the equivalent short option character for this long option.

Constructor Detail

LongOpt

public LongOpt(String name, int has_arg, StringBuffer flag, int val)
Create a new LongOpt object with the given parameter values. If the value passed as has_arg is not valid, then an exception is thrown.

Parameters: name The long option String. has_arg Indicates whether the option has no argument (NO_ARGUMENT), a required argument (REQUIRED_ARGUMENT) or an optional argument (OPTIONAL_ARGUMENT). flag If non-null, this is a location to store the value of "val" when this option is encountered, otherwise "val" is treated as the equivalent short option character. val The value to return for this long option, or the equivalent single letter option to emulate if flag is null.

Throws: IllegalArgumentException If the has_arg param is not one of NO_ARGUMENT, REQUIRED_ARGUMENT or OPTIONAL_ARGUMENT.

Method Detail

getFlag

public StringBuffer getFlag()
Returns the value of the 'flag' field for this long option

Returns: The value of 'flag'

getHasArg

public int getHasArg()
Returns the value set for the 'has_arg' field for this long option

Returns: The value of 'has_arg'

getName

public String getName()
Returns the name of this LongOpt as a String

Returns: Then name of the long option

getVal

public int getVal()
Returns the value of the 'val' field for this long option

Returns: The value of 'val'