com.jeffpalm.util.getopt
Class Options

java.lang.Object
  extended by com.jeffpalm.util.getopt.Options
All Implemented Interfaces:
ReflectUtils.Setter

public class Options
extends java.lang.Object
implements ReflectUtils.Setter


Nested Class Summary
static interface Options.AfterParsing
           
static interface Options.CanExcludeOption
           
static interface Options.ExitHandler
           
static interface Options.HelpLine
           
static interface Options.Messager
           
static interface Options.Option
           
static interface Options.OptionSet
           
 
Method Summary
 void debug()
           
 java.lang.reflect.Field[] getFields(java.lang.Object o)
           
 Options.OptionSet getopts(java.lang.String[] args, java.lang.Object object)
           
 Options.OptionSet getoptsSafely(java.lang.String[] args, java.lang.Object object)
           
 Options.HelpLine[] helpLines(java.lang.Object object)
           
 Options.HelpLine[] helpLines(java.lang.Object object, java.lang.reflect.Member[] members)
           
static boolean isArg(java.lang.String val, java.lang.String[] args)
           
static boolean isOpt(java.lang.String arg)
           
static boolean isOpt(java.lang.String val, java.lang.String[] args)
           
 boolean isOption(java.lang.String arg, java.lang.String[] args)
           
static void main(java.lang.String[] args)
           
static Options newInstance()
           
static Options newInstance(Options.Messager m)
           
static java.io.File optionsFile(java.lang.Class cls)
          Calls optionsFile(Class) with cls and false.
static java.io.File optionsFile(java.lang.Class cls, boolean makeIfNotThere)
          Returns the file that we use for looking up default options and makes the corresponding directories if makeIfNotThere is true.
 Options.OptionSet parse(java.lang.String[] args, java.lang.Object object)
           
 Options.OptionSet parseSafely(java.lang.String[] args, java.lang.Object object)
           
 void printHelp(java.lang.Object object)
           
 void printHelp(java.lang.Object object, boolean printTryStmt)
           
 void printHelp(java.lang.Object object, java.io.PrintStream out)
           
 void printHelp(java.lang.Object object, java.io.PrintStream out, boolean printTryStmt)
           
 void printHelpSafely(java.lang.Object o)
           
 void set(java.lang.reflect.Field f, java.lang.Object obj, java.lang.Object val)
           
 void setErr(java.io.PrintStream err)
           
 void setExitAfterHelp(boolean exitAfterHelp)
           
 void setExitAfterTest(boolean exitAfterTest)
           
 void setExitAfterVersion(boolean exitAfterVersion)
           
 void setExitHandler(Options.ExitHandler exitHandler)
           
 void setMessager(Options.Messager m)
           
 void setStrict(boolean strict)
           
 void setUseSetMethods(boolean useSetMethods)
           
 void setVerbose(boolean verbose)
           
 void setVersionClassName(java.lang.String versionClassName)
           
 void showVersion(java.lang.Object object)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

newInstance

public static Options newInstance()

newInstance

public static Options newInstance(Options.Messager m)

parseSafely

public final Options.OptionSet parseSafely(java.lang.String[] args,
                                           java.lang.Object object)

parse

public final Options.OptionSet parse(java.lang.String[] args,
                                     java.lang.Object object)
                              throws java.lang.Exception
Throws:
java.lang.Exception

setStrict

public final void setStrict(boolean strict)

setUseSetMethods

public final void setUseSetMethods(boolean useSetMethods)

setExitAfterHelp

public final void setExitAfterHelp(boolean exitAfterHelp)

setExitAfterVersion

public final void setExitAfterVersion(boolean exitAfterVersion)

setExitAfterTest

public final void setExitAfterTest(boolean exitAfterTest)

setVersionClassName

public final void setVersionClassName(java.lang.String versionClassName)

setExitHandler

public void setExitHandler(Options.ExitHandler exitHandler)

getoptsSafely

public final Options.OptionSet getoptsSafely(java.lang.String[] args,
                                             java.lang.Object object)

getopts

public final Options.OptionSet getopts(java.lang.String[] args,
                                       java.lang.Object object)
                                throws java.lang.Exception
Throws:
java.lang.Exception

optionsFile

public static java.io.File optionsFile(java.lang.Class cls)
Calls optionsFile(Class) with cls and false.

See Also:
optionsFile(Class)

optionsFile

public static java.io.File optionsFile(java.lang.Class cls,
                                       boolean makeIfNotThere)
Returns the file that we use for looking up default options and makes the corresponding directories if makeIfNotThere is true.

Parameters:
cls - Options are for this class
makeIfNotThere - true if we make directories
Returns:
the file that we use for looking up default options and makes the corresponding directories if makeIfNotThere

set

public void set(java.lang.reflect.Field f,
                java.lang.Object obj,
                java.lang.Object val)
         throws java.lang.Exception
Specified by:
set in interface ReflectUtils.Setter
Throws:
java.lang.Exception

showVersion

public void showVersion(java.lang.Object object)

printHelpSafely

public void printHelpSafely(java.lang.Object o)

printHelp

public void printHelp(java.lang.Object object)
               throws java.lang.Exception
Throws:
java.lang.Exception

printHelp

public void printHelp(java.lang.Object object,
                      java.io.PrintStream out)
               throws java.lang.Exception
Throws:
java.lang.Exception

printHelp

public void printHelp(java.lang.Object object,
                      boolean printTryStmt)
               throws java.lang.Exception
Throws:
java.lang.Exception

printHelp

public void printHelp(java.lang.Object object,
                      java.io.PrintStream out,
                      boolean printTryStmt)
               throws java.lang.Exception
Throws:
java.lang.Exception

helpLines

public final Options.HelpLine[] helpLines(java.lang.Object object)
                                   throws java.lang.Exception
Throws:
java.lang.Exception

helpLines

public Options.HelpLine[] helpLines(java.lang.Object object,
                                    java.lang.reflect.Member[] members)
                             throws java.lang.Exception
Throws:
java.lang.Exception

getFields

public java.lang.reflect.Field[] getFields(java.lang.Object o)
                                    throws java.lang.Exception
Throws:
java.lang.Exception

isOption

public final boolean isOption(java.lang.String arg,
                              java.lang.String[] args)

isOpt

public static final boolean isOpt(java.lang.String val,
                                  java.lang.String[] args)

isArg

public static final boolean isArg(java.lang.String val,
                                  java.lang.String[] args)

isOpt

public static final boolean isOpt(java.lang.String arg)

setVerbose

public final void setVerbose(boolean verbose)

debug

public final void debug()

setErr

public final void setErr(java.io.PrintStream err)

setMessager

public void setMessager(Options.Messager m)

main

public static void main(java.lang.String[] args)
                 throws java.lang.Exception
Throws:
java.lang.Exception