public abstract class CommandLineClient
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.util.List<java.util.Set<CliOption>> |
atLeastOneOfBags |
protected java.util.List<java.util.Set<CliOption>> |
atMostOneOfBags |
protected ClientHelper |
clientHelper |
protected java.util.Map<CliOption,java.util.Set<CliOption>> |
conditionalAbsentOptions |
protected java.util.Map<CliOption,java.util.Set<CliOption>> |
conditionalOptions |
protected java.util.Set<CliOption> |
declaredOptions |
protected java.lang.String |
description |
protected java.util.List<java.util.Set<CliOption>> |
exactlyOneOfBags |
protected java.util.Set<CliOption> |
facultativeOptions |
protected org.apache.commons.cli.CommandLine |
line |
protected java.util.Set<CliOption> |
mandatoryOptions |
protected org.apache.commons.cli.Options |
options |
Constructor and Description |
---|
CommandLineClient(java.lang.String description) |
Modifier and Type | Method and Description |
---|---|
java.lang.String[] |
asArray(CliOption opt) |
boolean |
asBoolean(CliOption opt) |
java.lang.Class<?> |
asClass(CliOption opt) |
java.nio.file.Path |
asDir(CliOption opt) |
double |
asDouble(CliOption opt) |
protected IndexedCorpus |
asIndexedCorpus(CliOption path) |
int |
asInt(CliOption opt) |
java.util.List<java.lang.String> |
asList(CliOption opt) |
long |
asLong(CliOption opt) |
java.nio.file.Path |
asPath(CliOption opt) |
Property<?> |
asProperty(CliOption opt) |
Property<?> |
asProperty(java.lang.String propertyName) |
RelationProperty |
asRelationProperty(CliOption opt) |
java.lang.String |
asString(CliOption opt) |
TermProperty |
asTermProperty(CliOption opt) |
TermProperty |
asTermProperty(java.lang.String pName) |
java.util.List<java.lang.String> |
asTermString(CliOption opt) |
void |
checkAtLeastOneOf() |
void |
checkAtMostOneOf() |
void |
checkClientState(CliOption opt) |
void |
checkExactlyOneOf() |
abstract void |
configureOpts() |
void |
declareAtLeastOneOf(CliOption first,
CliOption second,
CliOption... others) |
void |
declareAtMostOneOf(CliOption first,
CliOption second,
CliOption... others) |
void |
declareCannotAppearWhenCondition(CliOption conditionalOpt,
CliOption... mustBeAbsentOnCondition)
Declares a list of options that cannot appear when
a conditional option is set.
|
void |
declareConditional(CliOption conditionalOpt,
CliOption... mandatoryOptsIfPresent)
Declare some option mandatory only when another
facultative (optional) option is present.
|
void |
declareExactlyOneOf(CliOption first,
CliOption second,
CliOption... others) |
void |
declareFacultative(CliOption option) |
void |
declareMandatory(CliOption option) |
void |
doHelp(java.io.PrintStream out) |
Lang |
getLang() |
java.util.List<java.lang.String> |
getList(CliOption opt) |
java.util.Optional<java.lang.String> |
getOpt(CliOption opt) |
boolean |
hasOpt(CliOption opt) |
boolean |
isSet(CliOption opt) |
void |
launch(java.lang.String... args) |
protected abstract void |
run() |
protected void |
runClient(java.lang.String[] args) |
protected ClientHelper clientHelper
protected java.lang.String description
protected org.apache.commons.cli.Options options
protected org.apache.commons.cli.CommandLine line
protected java.util.List<java.util.Set<CliOption>> atLeastOneOfBags
protected java.util.List<java.util.Set<CliOption>> atMostOneOfBags
protected java.util.List<java.util.Set<CliOption>> exactlyOneOfBags
protected java.util.Set<CliOption> declaredOptions
protected java.util.Set<CliOption> facultativeOptions
protected java.util.Set<CliOption> mandatoryOptions
public abstract void configureOpts()
protected abstract void run() throws java.lang.Exception
java.lang.Exception
public void declareAtMostOneOf(CliOption first, CliOption second, CliOption... others)
public void declareAtLeastOneOf(CliOption first, CliOption second, CliOption... others)
public void declareExactlyOneOf(CliOption first, CliOption second, CliOption... others)
public void declareMandatory(CliOption option)
public void declareConditional(CliOption conditionalOpt, CliOption... mandatoryOptsIfPresent)
conditionalOpt
- mandatoryOptsIfPresent
- public void declareCannotAppearWhenCondition(CliOption conditionalOpt, CliOption... mustBeAbsentOnCondition)
conditionalOpt
- mustBeAbsentOnCondition
- public void declareFacultative(CliOption option)
public java.util.Optional<java.lang.String> getOpt(CliOption opt)
public boolean hasOpt(CliOption opt)
public void checkClientState(CliOption opt)
public java.nio.file.Path asPath(CliOption opt)
protected IndexedCorpus asIndexedCorpus(CliOption path)
public java.nio.file.Path asDir(CliOption opt)
public boolean asBoolean(CliOption opt)
public int asInt(CliOption opt)
public java.util.List<java.lang.String> getList(CliOption opt)
public boolean isSet(CliOption opt)
public long asLong(CliOption opt)
public java.util.List<java.lang.String> asList(CliOption opt)
public java.lang.String[] asArray(CliOption opt)
public java.lang.String asString(CliOption opt)
public java.util.List<java.lang.String> asTermString(CliOption opt)
public Lang getLang()
public double asDouble(CliOption opt)
public void launch(java.lang.String... args)
protected void runClient(java.lang.String[] args)
public void doHelp(java.io.PrintStream out)
public void checkExactlyOneOf()
public void checkAtMostOneOf()
public void checkAtLeastOneOf()
public Property<?> asProperty(java.lang.String propertyName)
public TermProperty asTermProperty(java.lang.String pName)
public TermProperty asTermProperty(CliOption opt)
public RelationProperty asRelationProperty(CliOption opt)
public java.lang.Class<?> asClass(CliOption opt)