projects
/
svjatoslav_commons.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
possibility to specify default value
[svjatoslav_commons.git]
/
src
/
main
/
java
/
eu
/
svjatoslav
/
commons
/
commandline
/
parameterparser
/
parameter
/
StringParameter.java
diff --git
a/src/main/java/eu/svjatoslav/commons/commandline/parameterparser/parameter/StringParameter.java
b/src/main/java/eu/svjatoslav/commons/commandline/parameterparser/parameter/StringParameter.java
index
fee7adb
..
7a72cf3
100755
(executable)
--- a/
src/main/java/eu/svjatoslav/commons/commandline/parameterparser/parameter/StringParameter.java
+++ b/
src/main/java/eu/svjatoslav/commons/commandline/parameterparser/parameter/StringParameter.java
@@
-9,8
+9,16
@@
import eu.svjatoslav.commons.commandline.parameterparser.Parameter;
public class StringParameter extends Parameter<String, StringParameter> {
public class StringParameter extends Parameter<String, StringParameter> {
+ public final String defaultValue;
+
public StringParameter(final String description) {
super(description, ArgumentCount.SINGLE);
public StringParameter(final String description) {
super(description, ArgumentCount.SINGLE);
+ defaultValue = null;
+ }
+ public StringParameter(final String description, String defaultValue) {
+ super(description, ArgumentCount.SINGLE);
+ this.defaultValue = defaultValue;
+ this.setSpecified(true);
}
@Override
}
@Override
@@
-21,11
+29,12
@@
public class StringParameter extends Parameter<String, StringParameter> {
@Override
public String getValue() {
@Override
public String getValue() {
- if (arguments.
size() != 1)
- throw new RuntimeException("Parameter " + description
-
+ " shall have exactly 1 argument."
);
+ if (arguments.
isEmpty() && (defaultValue != null)) return defaultValue;
+
+
if (arguments.size() == 1) return arguments.get(0
);
- return arguments.get(0);
+ throw new RuntimeException("Parameter " + description
+ + " shall have exactly 1 argument.");
}
@Override
}
@Override