Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


oracle.javatools.util
Class CommandParser

java.lang.Object
  extended by oracle.javatools.util.CommandParser


public class CommandParser
extends java.lang.Object

A simple command line parser.

See Also:
CommandModel

Nested Class Summary
static interface CommandParser.Converter<T>
          An interface for an object which converts a String to a value.

 

Constructor Summary
CommandParser()
           

 

Method Summary
protected  void conditionalRequirementUnsatisfied(java.lang.String precedent, java.lang.String precedentValue, java.lang.String antecedent, java.lang.String antecedentValue)
           
 void defineConverter(CommandParser.Converter<?> converter)
          Defines a converter for a type.
 void defineOption(java.lang.String name)
          Defines an unvalued option.
 void defineOption(java.lang.String name, java.lang.Class<?> type)
          Defines an option.
 void defineParameter(java.lang.String name, java.lang.Class<?> type)
          Defines a parameter.
 void defineRequirement(java.lang.String... names)
          Defines a requirement that one of a list of options or parameters be present.
 void defineRequirementAbsent(java.lang.String precedent, java.lang.String antecedent)
          Defines a requirement that if a parameter or option is present then another parameter or option must be absent.
 void defineRequirementPresent(java.lang.String precedent, java.lang.String antecedent)
          Defines a requirement that if a parameter or option is present then another parameter or option must be present.
 void defineSuperseding(java.lang.String... options)
          Defines a superseding set of options.
 void defineSynonym(java.lang.String name, java.lang.String synonym)
          Defines a synonym for an option.
<T> CommandParser.Converter<T>
getConverter(java.lang.Class<T> type)
          Gets the converter defined for a type.
 java.lang.Class getType(java.lang.String name)
          Gets the value type of a parameter or option, or null for an unvalued option.
protected  void invalidOption(java.lang.String name)
           
 boolean isArgumentFilesEnabled()
          Gets whether argument file support is enabled.
 boolean isDefined(java.lang.String name)
          Gets whether a name is a parameter or option.
protected  void missingOptionValue(java.lang.String name, java.lang.Class type)
           
protected  java.lang.Object optionValueConversionFailed(java.lang.String name, java.lang.String typeDescription, java.lang.String argument, java.lang.Throwable e)
           
protected  java.lang.Object parameterValueConversionFailed(java.lang.String name, java.lang.String typeDescription, java.lang.String argument, java.lang.Throwable e)
           
 CommandModel parse(java.lang.String[] arguments)
          Parses a command line.
protected  void requirementsUnsatisfied(java.util.Set parameters, java.lang.String[] requirements)
           
 void setArgumentFilesEnabled(boolean argumentFilesEnabled)
          Sets whether argument file support is enabled.
protected  void unexpectedParameter(java.lang.String name)
           

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

 

Constructor Detail

CommandParser

public CommandParser()

Method Detail

setArgumentFilesEnabled

public void setArgumentFilesEnabled(boolean argumentFilesEnabled)
Sets whether argument file support is enabled.

defineConverter

public void defineConverter(CommandParser.Converter<?> converter)
Defines a converter for a type.

defineOption

public void defineOption(java.lang.String name)
Defines an unvalued option.
Parameters:
name - The canonical name of the option.
Throws:
java.lang.IllegalArgumentException - if the name is already defined.
See Also:
defineSynonym(java.lang.String, java.lang.String)

defineOption

public void defineOption(java.lang.String name,
                         java.lang.Class<?> type)
Defines an option.
Parameters:
name - The canonical name of the option.
type - The type of the option value.
Throws:
java.lang.IllegalArgumentException - if the name is already defined or if no converter is defined for the type.
See Also:
defineSynonym(java.lang.String, java.lang.String)

defineParameter

public void defineParameter(java.lang.String name,
                            java.lang.Class<?> type)
Defines a parameter. An array type indicates a list parameter; only one list parameter is allowed.
Parameters:
name - The name of the parameter.
type - The type of the parameter.
Throws:
java.lang.IllegalArgumentException - if the name is already defined, if no converter is defined for the type, or if a list parameter is already defined.

defineSuperseding

public void defineSuperseding(java.lang.String... options)
Defines a superseding set of options. When more than one option from the set is present, the last one specified supersedes the others.
Parameters:
options - The canonical names of the options in the set.
Throws:
java.lang.IllegalArgumentException - if a name is not defined or is defined to belong to another superseding set.

defineRequirement

public void defineRequirement(java.lang.String... names)
Defines a requirement that one of a list of options or parameters be present.
Parameters:
names - The canonical names of the options or parameters.
Throws:
java.lang.IllegalArgumentException - if a name is not defined.

defineRequirementPresent

public void defineRequirementPresent(java.lang.String precedent,
                                     java.lang.String antecedent)
Defines a requirement that if a parameter or option is present then another parameter or option must be present.
Throws:
java.lang.IllegalArgumentException - if either name is not a parameter or option.

defineRequirementAbsent

public void defineRequirementAbsent(java.lang.String precedent,
                                    java.lang.String antecedent)
Defines a requirement that if a parameter or option is present then another parameter or option must be absent.
Throws:
java.lang.IllegalArgumentException - if either name is not defined.

defineSynonym

public void defineSynonym(java.lang.String name,
                          java.lang.String synonym)
Defines a synonym for an option.
Parameters:
name - The canonical name of the option.
synonym - An alternative name for the option.
Throws:
java.lang.IllegalArgumentException - if the name is not defined or if the synonym is already defined.
See Also:
defineOption(java.lang.String)

getConverter

public <T> CommandParser.Converter<T> getConverter(java.lang.Class<T> type)
Gets the converter defined for a type.

getType

public java.lang.Class getType(java.lang.String name)
Gets the value type of a parameter or option, or null for an unvalued option.
Parameters:
name - The canonical name of the option or parameter.
Throws:
java.lang.IllegalArgumentException - if the name is not defined.

isArgumentFilesEnabled

public boolean isArgumentFilesEnabled()
Gets whether argument file support is enabled.

isDefined

public boolean isDefined(java.lang.String name)
Gets whether a name is a parameter or option.
Parameters:
name - A name.
Returns:
True iff the name is defined as a parameter or option.

parse

public CommandModel parse(java.lang.String[] arguments)
                   throws CommandException
Parses a command line.
Throws:
CommandException

invalidOption

protected void invalidOption(java.lang.String name)
                      throws CommandException
Throws:
CommandException

missingOptionValue

protected void missingOptionValue(java.lang.String name,
                                  java.lang.Class type)
                           throws CommandException
Throws:
CommandException

optionValueConversionFailed

protected java.lang.Object optionValueConversionFailed(java.lang.String name,
                                                       java.lang.String typeDescription,
                                                       java.lang.String argument,
                                                       java.lang.Throwable e)
                                                throws CommandException
Throws:
CommandException

unexpectedParameter

protected void unexpectedParameter(java.lang.String name)
                            throws CommandException
Throws:
CommandException

parameterValueConversionFailed

protected java.lang.Object parameterValueConversionFailed(java.lang.String name,
                                                          java.lang.String typeDescription,
                                                          java.lang.String argument,
                                                          java.lang.Throwable e)
                                                   throws CommandException
Throws:
CommandException

requirementsUnsatisfied

protected void requirementsUnsatisfied(java.util.Set parameters,
                                       java.lang.String[] requirements)
                                throws CommandException
Throws:
CommandException

conditionalRequirementUnsatisfied

protected void conditionalRequirementUnsatisfied(java.lang.String precedent,
                                                 java.lang.String precedentValue,
                                                 java.lang.String antecedent,
                                                 java.lang.String antecedentValue)
                                          throws CommandException
Throws:
CommandException

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


Copyright © 1997, 2012, Oracle. All rights reserved.