|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.ObjectGiciParser.ArgumentsParser
public class ArgumentsParser
Arguments parser definition (useful for extending in other classe). This class analyses a string of arguments and extract and check its validity. Use example: import java.lang.reflect.*; public class CoderParser extends ArgumentsParser{ //ARGUMENTS SPECIFICATION String[][] coderArguments = { {"-ct", "--colourTransformType", "{int}", "if 3 first components are RGB: 1 if WT is 1 or 0, 2 if WT is 2. Otherwise 0.", "0", "1", "Colour transform type:\n 0- No colour transform\n 1- Reversible Colour Transform\n 2- Irreversible Colour Transform" } }; //ARGUMENTS VARIABLES int CTType = -1; public CoderParser(String[] arguments) throws ParameterException, ErrorException{ try{ Method m = this.getClass().getMethod("parseArgument", new Class[] {int.class, String[].class}); parse(coderArguments, arguments, this, m); }catch(NoSuchMethodException e){ throw new ErrorException("Coder parser error invoking parse function."); } } public void parseArgument(int argFound, String[] options) throws ParameterException{ switch(argFound){ case 0: //-c --colourTransformType CTType = parseIntegerPositive(options); break; } } public int getCTType(){ return(CTType); } }
Field Summary | |
---|---|
(package private) java.lang.String[][] |
argumentsSpecification
Arguments specificiation. |
Constructor Summary | |
---|---|
ArgumentsParser()
|
Method Summary | |
---|---|
(package private) int |
argFind(java.lang.String arg)
Finds the argument string in arguments specification array. |
void |
parse(java.lang.String[][] argumentsSpecification,
java.lang.String[] args,
java.lang.Object parseClass,
java.lang.reflect.Method parseArgument)
Receives the arguments string and parses all the arguments. |
boolean |
parseBoolean(java.lang.String[] options)
|
boolean[] |
parseBooleanArray(java.lang.String[] options,
int numOptions)
|
float[] |
parseFloatArray(java.lang.String[] options)
|
float[] |
parseFloatArray(java.lang.String[] options,
int numOptions)
|
float |
parseFloatPositive(java.lang.String[] options)
|
int[] |
parseIntegerArray(java.lang.String[] options)
|
int[] |
parseIntegerArray(java.lang.String[] options,
int numOptions)
|
int |
parseIntegerPositive(java.lang.String[] options)
|
long[] |
parseLongArray(java.lang.String[] options)
|
long[] |
parseLongArray(java.lang.String[] options,
int numOptions)
|
long |
parseLongPositive(java.lang.String[] options)
|
java.lang.String |
parseString(java.lang.String[] options)
|
void |
showArgsInfo()
This function shows arguments information to console. |
void |
showArgsInfoLatexTable()
This function shows arguments information to console using a formatted table in latex (useful to write manuals in latex). |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
java.lang.String[][] argumentsSpecification
String arguments.
Constructor Detail |
---|
public ArgumentsParser()
Method Detail |
---|
public void parse(java.lang.String[][] argumentsSpecification, java.lang.String[] args, java.lang.Object parseClass, java.lang.reflect.Method parseArgument) throws ParameterException, ErrorException
argumentsSpecification
- defined in this classargs
- the array of strings passed at the command lineparseClass
- class where the invocated method isparseArgument
- method to invoke for each argument
ParameterException
- when an invalid parsing is detected
ErrorException
- when some problem with method invocation occursint argFind(java.lang.String arg)
arg
- argument to find out in argumentsSpecification
public void showArgsInfo()
public void showArgsInfoLatexTable()
public boolean parseBoolean(java.lang.String[] options) throws ParameterException
ParameterException
public int parseIntegerPositive(java.lang.String[] options) throws ParameterException
ParameterException
public long parseLongPositive(java.lang.String[] options) throws ParameterException
ParameterException
public float parseFloatPositive(java.lang.String[] options) throws ParameterException
ParameterException
public java.lang.String parseString(java.lang.String[] options) throws ParameterException
ParameterException
public boolean[] parseBooleanArray(java.lang.String[] options, int numOptions) throws ParameterException
ParameterException
public int[] parseIntegerArray(java.lang.String[] options) throws ParameterException
ParameterException
public int[] parseIntegerArray(java.lang.String[] options, int numOptions) throws ParameterException
ParameterException
public long[] parseLongArray(java.lang.String[] options) throws ParameterException
ParameterException
public long[] parseLongArray(java.lang.String[] options, int numOptions) throws ParameterException
ParameterException
public float[] parseFloatArray(java.lang.String[] options) throws ParameterException
ParameterException
public float[] parseFloatArray(java.lang.String[] options, int numOptions) throws ParameterException
ParameterException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |