org.geotools.console
Class CommandLine

Object
  extended by CommandLine

public class CommandLine
extends Object

Base class for command line tools. Subclasses define fields annotated with Option, while will be initialized automatically by the constructor. The following options are automatically recognized by this class:

-encoding  Set the input and output encoding.
-help  Print the help summary.
-locale  Set the locale for string, number and date formatting.

Since:
2.5
Author:
Martin Desruisseaux, Cédric Briançon

Field Summary
static int ABORT_EXIT_CODE
          The code given to System.exit(int) when the program aborted at user request.
protected  String[] arguments
          The remaining arguments after all option values have been assigned to the fields.
static int BAD_CONTENT_EXIT_CODE
          The code given to System.exit(int) when the program failed because of bad content in a file.
protected  PrintWriter err
          Error stream to the console.
static int ILLEGAL_ARGUMENT_EXIT_CODE
          The code given to System.exit(int) when the program failed because of an illegal user argument.
static int IO_EXCEPTION_EXIT_CODE
          The code given to System.exit(int) when the program failed because of an IOException.
protected  Locale locale
          The locale inferred from the "-locale" option.
protected  PrintWriter out
          Output stream to the console.
static int SQL_EXCEPTION_EXIT_CODE
          The code given to System.exit(int) when the program failed because of a SQLException.
 
Constructor Summary
protected CommandLine(String[] args)
          Creates a new CommandLine instance from the given arguments.
protected CommandLine(String[] args, int maximumRemaining)
          Creates a new CommandLine instance from the given arguments.
 
Method Summary
protected  void help()
          Prints a description of all arguments to the standard output.
protected
<T> T
parse(Class<T> type, String value)
          Parses the given string as a value of the given type.
 
Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ILLEGAL_ARGUMENT_EXIT_CODE

public static final int ILLEGAL_ARGUMENT_EXIT_CODE
The code given to System.exit(int) when the program failed because of an illegal user argument.

See Also:
Constant Field Values

ABORT_EXIT_CODE

public static final int ABORT_EXIT_CODE
The code given to System.exit(int) when the program aborted at user request.

See Also:
Constant Field Values

BAD_CONTENT_EXIT_CODE

public static final int BAD_CONTENT_EXIT_CODE
The code given to System.exit(int) when the program failed because of bad content in a file.

See Also:
Constant Field Values

IO_EXCEPTION_EXIT_CODE

public static final int IO_EXCEPTION_EXIT_CODE
The code given to System.exit(int) when the program failed because of an IOException.

See Also:
Constant Field Values

SQL_EXCEPTION_EXIT_CODE

public static final int SQL_EXCEPTION_EXIT_CODE
The code given to System.exit(int) when the program failed because of a SQLException.

See Also:
Constant Field Values

out

protected final PrintWriter out
Output stream to the console. This output stream may use the encoding specified by the "-encoding" argument, if presents.


err

protected final PrintWriter err
Error stream to the console.


locale

protected final Locale locale
The locale inferred from the "-locale" option. If no such option was provided, then this field is set to the default locale.


arguments

protected final String[] arguments
The remaining arguments after all option values have been assigned to the fields.

Constructor Detail

CommandLine

protected CommandLine(String[] args)
Creates a new CommandLine instance from the given arguments. This constructor expects no additional argument after the one annoted as Option.

Parameters:
args - The command-line arguments.

CommandLine

protected CommandLine(String[] args,
                      int maximumRemaining)
Creates a new CommandLine instance from the given arguments. If this constructor fails because of a programming error (for example a type not handled by parse method), then an exception is thrown like usual. If this constructor fails because of some user error (e.g. if a mandatory argument is not provided) or some other external conditions (e.g. an IOException), then it prints a short error message and invokes System.exit(int) with one the EXIT_CODE constants.

Parameters:
args - The command-line arguments.
maximumRemaining - The maximum number of arguments that may remain after processing of annotated fields. This is the maximum length of the arguments array. The default value is 0.
Method Detail

parse

protected <T> T parse(Class<T> type,
                      String value)
           throws UnsupportedOperationException
Parses the given string as a value of the given type. This method is invoked automatically for values that are not of one of the pre-defined types. The default implementation thrown an exception in all cases.

Type Parameters:
T - The field type.
Parameters:
type - The field type.
value - The value given on the command line.
Returns:
The value for the given string to parse.
Throws:
UnsupportedOperationException - if the value can't be parsed.

help

protected void help()
Prints a description of all arguments to the standard output. This method is invoked automatically if the user provided the --help argument on the command line. Subclasses can override this method in order to prints a summary before the option list.



Copyright © 1996-2014 Geotools. All Rights Reserved.