org.jutil.util
Class ArgParser

java.lang.Object
  extended by org.jutil.util.ArgParser

public class ArgParser
extends java.lang.Object

This is the ArgParse class.

  Simple argument parsing class designed to provide simple but
  consitent way to parse args
 

Usage: public class MyClass { final static String[][] ARG_DATA = { // { arg, short desc, desc, required, default(optional)} { "-conf", "-conf server.xml", "-conf server.xml, xml configuration file for the server", "true" }, { "-port", "-port 110", "-port [port], port to use defaults to 110", "false", "110" }, { "-debug", "-debug true", "-debug, set debug true/false", "false", "false" }, }; public static void main(String[] args) { ArgParser argParser = ArgParser.create( MyClass.ARG_DATA ); if(!argParser.parse(args)) { PrintWriter printWriter = new PrintWriter(System.out); argParser.printError(printWriter); argParser.printUsage(printWriter, MyClass.class ); argParser.printHelp(printWriter); }else{ // do what ever you need with args MyClass myClass = new MyClass(); myClass.init(argParser.getArg("-conf")); myClass.run(); } } public MyClass(){} } TODO: needs a set of options that can be passed ??


Constructor Summary
ArgParser()
           
 
Method Summary
 void addArg(Arg arg)
           
static ArgParser create(java.lang.String[][] argData)
           
 java.util.Iterator elements()
           
 java.lang.String getArg(java.lang.String flag)
           
 java.lang.String getArg(java.lang.String flag, java.lang.String defaultValue)
           
 java.lang.String getError()
           
 java.lang.String getHelp()
           
 java.lang.String getUsage()
           
 java.util.Iterator keys()
           
 boolean parse(java.lang.String[] args)
           
 void printError(java.io.PrintWriter printWriter)
           
 void printHelp(java.io.PrintWriter printWriter)
           
 void printUsage(java.io.PrintWriter printWriter, java.lang.Class clss)
           
 void setDebug(boolean debug)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArgParser

public ArgParser()
Method Detail

create

public static final ArgParser create(java.lang.String[][] argData)

setDebug

public void setDebug(boolean debug)

addArg

public void addArg(Arg arg)

keys

public java.util.Iterator keys()

elements

public java.util.Iterator elements()

getArg

public java.lang.String getArg(java.lang.String flag)

getArg

public java.lang.String getArg(java.lang.String flag,
                               java.lang.String defaultValue)

parse

public boolean parse(java.lang.String[] args)

getError

public java.lang.String getError()

printError

public void printError(java.io.PrintWriter printWriter)

getUsage

public java.lang.String getUsage()

getHelp

public java.lang.String getHelp()

printUsage

public void printUsage(java.io.PrintWriter printWriter,
                       java.lang.Class clss)

printHelp

public void printHelp(java.io.PrintWriter printWriter)