Package opendap.dts

Class Getopts

java.lang.Object
opendap.dts.Getopts

public class Getopts extends Object
A class for achieving getopts() functionality.

Loosely based on perl5's getopt/Std.pm.

The object is instantiated with a 'flags' String that is the composed of the set of switches allowed to be passed, and the 'args' String array that has to be parsed opposite the 'flags' string.

 new Getopts("oif:", args)  -o, -i are boolean flags,
 -f takes an argument
 
The class processes single-character switches with switch clustering.

The list of valid switches is accessible through the 'swList()' method, which returns an Enumeration of the switch names.

A local array including the arguments from the 'args' array that was passed as an argument but are the actual command line arguments is generated and is accessible through the 'argList()' method.

Options switch content fields can be accessible through the 'OptSwitch' class.

See Also:
  • Constructor Details

    • Getopts

      public Getopts(String flags, String[] args) throws InvalidSwitch
      Wrapper Constructor
      Parameters:
      flags - a string with the valid switch names
      args - array of strings (usually args)

      Throws:
      InvalidSwitch - thrown when invalid options are found

    • Getopts

      public Getopts(String progname, String flags, String[] args) throws InvalidSwitch
      Basic class constructor. Gets the flags passed, in a notation similar to the one used by the sh, ksh, bash, and perl getopts.

      String array 'args' is passed and is parsed according to the flags.

      Parameters:
      progname - program name for producing error messages
      flags - a string with the valid switch names
      args - array of strings (usually args)

      Throws:
      InvalidSwitch - thrown when invalid options are found

    • Getopts

      public Getopts(String progname, String[] args, String flags)
      Wrapper Constructor
      Parameters:
      progname - program name for producing error messages
      flags - a string with the valid switch names
      args - array of strings (usually args)

  • Method Details

    • getSwitch

      public OptSwitch getSwitch(Character sw)
      method to return the OptSwitch object associated with the 'sw' argument.

      Parameters:
      sw - switch whose class is requested

    • getOption

      public String getOption(Character sw)
      getOption
      Parameters:
      sw - Character switch whose option is requested
    • getOption

      public String getOption(int sw)
      getOption
      Parameters:
      sw - int value switch whose option is requested
    • swList

      public Enumeration swList()
      Method to return an Enumeration of the switches that the Getopts object is able to parse (according to its initialization).

      May be later used to step through the OptSwitch objects.

    • argList

      public String[] argList()
      Method to return an array of the actual arguments of the command line invocation.
    • initialize

      protected void initialize(String progname, String flags, String[] args) throws InvalidSwitch
      Throws:
      InvalidSwitch
    • main

      public static void main(String[] args)
      method for class testing.

      Invocation:

       java Getopts "option set" arg0 arg1 ... argn
       
      Parameters:
      args - arguments passed
    • getopt

      public int getopt()
    • getOptarg

      public String getOptarg()
    • setOpterr

      public void setOpterr(boolean b)
    • getOptind

      public int getOptind()
    • getOptopt

      public int getOptopt()