Package org.eclipse.epsilon.common.cli
Class ConfigParser<C extends ProfilableRunConfiguration,B extends ProfilableRunConfiguration.Builder<C,B>>
- java.lang.Object
-
- org.eclipse.epsilon.common.cli.ConfigParser<C,B>
-
- All Implemented Interfaces:
java.util.function.Consumer<java.lang.String[]>
,java.util.function.Function<java.lang.String[],C>
- Direct Known Subclasses:
EolConfigParser
public class ConfigParser<C extends ProfilableRunConfiguration,B extends ProfilableRunConfiguration.Builder<C,B>> extends java.lang.Object implements java.util.function.Consumer<java.lang.String[]>, java.util.function.Function<java.lang.String[],C>
Convenience class providing an extensible command-line builder forProfilableRunConfiguration
.- Since:
- 1.6
- Author:
- Sina Madani
-
-
Field Summary
Fields Modifier and Type Field Description protected B
builder
protected org.apache.commons.cli.CommandLine
cmdLine
protected org.apache.commons.cli.HelpFormatter
help
protected java.lang.String
helpOpt
protected java.lang.String
nL
protected java.lang.String
optionalUsage
protected org.apache.commons.cli.Options
options
protected java.lang.String
outFileOpt
protected java.lang.String
profileExecutionOpt
protected java.lang.String
repeatsOpt
protected java.lang.String
requiredUsage
protected C
runConfig
protected java.lang.String
scriptOpt
protected java.lang.String
showResultsOpt
-
Constructor Summary
Constructors Modifier Constructor Description protected
ConfigParser(B builder)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(java.lang.String[] args)
C
apply(java.lang.String[] args)
protected java.lang.String
formatUsage()
protected void
handleException(java.lang.Exception ex)
void
parseAndRun(java.lang.String[] args)
protected void
parseArgs(java.lang.String[] args)
protected double
tryParse(java.lang.String opt, double absentDefault)
protected double
tryParse(java.lang.String opt, float absentDefault)
protected int
tryParse(java.lang.String opt, int absentDefault)
protected long
tryParse(java.lang.String opt, long absentDefault)
-
-
-
Field Detail
-
builder
protected B extends ProfilableRunConfiguration.Builder<C,B> builder
-
runConfig
protected C extends ProfilableRunConfiguration runConfig
-
nL
protected java.lang.String nL
-
profileExecutionOpt
protected java.lang.String profileExecutionOpt
-
repeatsOpt
protected java.lang.String repeatsOpt
-
showResultsOpt
protected java.lang.String showResultsOpt
-
helpOpt
protected java.lang.String helpOpt
-
scriptOpt
protected java.lang.String scriptOpt
-
outFileOpt
protected java.lang.String outFileOpt
-
requiredUsage
protected java.lang.String requiredUsage
-
optionalUsage
protected java.lang.String optionalUsage
-
options
protected org.apache.commons.cli.Options options
-
help
protected org.apache.commons.cli.HelpFormatter help
-
cmdLine
protected org.apache.commons.cli.CommandLine cmdLine
-
-
Constructor Detail
-
ConfigParser
protected ConfigParser(B builder)
-
-
Method Detail
-
formatUsage
protected java.lang.String formatUsage()
-
parseArgs
protected void parseArgs(java.lang.String[] args) throws java.lang.Exception
- Throws:
java.lang.Exception
-
handleException
protected void handleException(java.lang.Exception ex)
-
tryParse
protected double tryParse(java.lang.String opt, float absentDefault) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
tryParse
protected double tryParse(java.lang.String opt, double absentDefault) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
tryParse
protected int tryParse(java.lang.String opt, int absentDefault) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
tryParse
protected long tryParse(java.lang.String opt, long absentDefault) throws java.lang.IllegalArgumentException
- Throws:
java.lang.IllegalArgumentException
-
accept
public final void accept(java.lang.String[] args)
- Specified by:
accept
in interfacejava.util.function.Consumer<C extends ProfilableRunConfiguration>
-
apply
public final C apply(java.lang.String[] args)
- Specified by:
apply
in interfacejava.util.function.Function<C extends ProfilableRunConfiguration,B extends ProfilableRunConfiguration.Builder<C,B>>
-
parseAndRun
public final void parseAndRun(java.lang.String[] args)
-
-