X-Git-Url: http://www2.svjatoslav.eu/gitweb/?p=svjatoslav_commons.git;a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fcommons%2Fcommandline%2Fparameterparser%2FParser.java;fp=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fcommons%2Fcommandline%2Fparameterparser%2FParser.java;h=0000000000000000000000000000000000000000;hp=e8e363811a2aa30ff14714b205de327cfbc118ce;hb=f3ca64a08930aa9a9372fe42df596b5e4643084e;hpb=0bdce2e2b2c16cc9576e8d96c67ce2830c8b0afc diff --git a/src/main/java/eu/svjatoslav/commons/commandline/parameterparser/Parser.java b/src/main/java/eu/svjatoslav/commons/commandline/parameterparser/Parser.java deleted file mode 100755 index e8e3638..0000000 --- a/src/main/java/eu/svjatoslav/commons/commandline/parameterparser/Parser.java +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Svjatoslav Commons - shared library of common functionality. Author: Svjatoslav Agejenko. - * This project is released under Creative Commons Zero (CC0) license. - */ -package eu.svjatoslav.commons.commandline.parameterparser; - -import java.util.ArrayList; - -/** - *
- * Single commandline parameter can have any amount of arguments. - *- */ -public class Parser { - - private final ArrayList
true
if no errors were found. false
- * otherwise.
- */
- private boolean checkMandatoryArgumentsPresent() {
-
- for (final Parameter parameter : parameters)
- if (parameter.isMandatory() && (!parameter.isSpecified())) {
- System.out.println("Error! Mandatory parameter ("
- + parameter.getAliases() + ") is not specified.");
- return false;
- }
-
- return true;
- }
-
- /**
- * Return parameter by given alias or null
if no parameter
- * exists for given alias.
- *
- * @param alias parameter alias
- * @return found parameter or null
if parameter was not found.
- */
- public Parameter findParameterByAlias(final String alias) {
-
- for (final Parameter parameter : parameters)
- if (parameter.matchesAlias(alias))
- return parameter;
-
- return null;
- }
-
- /**
- * @param args commandline arguments
- * @return true
if no errors were found. false
- * otherwise.
- */
- public boolean parse(final String[] args) {
-
- Parameter currentParameter = null;
-
- for (final String argument : args) {
-
- final Parameter parameterForAlias = findParameterByAlias(argument);
- if (parameterForAlias == null) {
- if (currentParameter == null) {
- System.out.println("Unknown commandline parameter: "
- + argument);
- return false;
- }
-
- if (!currentParameter.addArgument(argument))
- return false;
-
- } else {
- if (currentParameter != null)
- if (!currentParameter.noMoreArguments())
- return false;
-
- parameterForAlias.setSpecified(true);
- currentParameter = parameterForAlias;
- }
-
- }
-
- return checkMandatoryArgumentsPresent();
- }
-
- public void showHelp() {
- System.out.println("Available commandline arguments:");
- for (final Parameter parameter : parameters)
- System.out.println(parameter.getHelp());
- }
-
-}