opennlp.tools.cmdline
Class ArgumentParser

java.lang.Object
  extended by opennlp.tools.cmdline.ArgumentParser

public class ArgumentParser
extends Object

Parser for command line arguments. The parser creates a dynamic proxy which can be access via a command line argument interface.

The command line argument proxy interface must follow these conventions:
- Methods do not define arguments
- Method names must start with get
- Allowed return types are Integer, Boolean, String, File and Charset.

Note: Do not use this class, internal use only!


Nested Class Summary
static interface ArgumentParser.OptionalParameter
           
static interface ArgumentParser.ParameterDescription
           
 
Method Summary
static
<T> String
createUsage(Class<T> argProxyInterface)
          Creates a usage string which can be printed in case the user did specify the arguments incorrectly.
static
<T> T
parse(String[] args, Class<T> argProxyInterface)
          Parses the passed arguments and creates an instance of the proxy interface.
static
<T> boolean
validateArguments(String[] args, Class<T> argProxyInterface)
          Tests if the argument are correct or incorrect.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

createUsage

public static <T> String createUsage(Class<T> argProxyInterface)
Creates a usage string which can be printed in case the user did specify the arguments incorrectly. Incorrectly is defined as validateArguments(String[], Class) returns false.

Parameters:
argProxyInterface -
Returns:
the help message usage string

validateArguments

public static <T> boolean validateArguments(String[] args,
                                            Class<T> argProxyInterface)
Tests if the argument are correct or incorrect. Incorrect means, that mandatory arguments are missing or there are unknown arguments. The argument value itself can also be incorrect, but this is checked by the parse(String[], Class) method and reported accordingly.

Parameters:
args -
argProxyInterface -
Returns:

parse

public static <T> T parse(String[] args,
                          Class<T> argProxyInterface)
Parses the passed arguments and creates an instance of the proxy interface.

In case an argument value cannot be parsed a TerminateToolException is thrown which contains an error message which explains the problems.

Parameters:
args -
argProxyInterface -
Returns:
Throws:
TerminateToolException - if an argument value cannot be parsed.
IllegalArgumentException - if validateArguments returns false, if the proxy interface is not compatible.


Copyright © 2011 The Apache Software Foundation. All Rights Reserved.