+++ /dev/null
-/*
- * Meviz - Various tools collection to work with multimedia.
- * Copyright (C) 2012 -- 2017, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of version 2 of the GNU General Public License
- * as published by the Free Software Foundation.
- */
-
-package eu.svjatoslav.meviz.textsplitter;
-
-import eu.svjatoslav.commons.commandline.parameterparser.Parser;
-import eu.svjatoslav.commons.commandline.parameterparser.parameter.DirectoryParameter;
-import eu.svjatoslav.commons.commandline.parameterparser.parameter.NullParameter;
-import eu.svjatoslav.commons.commandline.parameterparser.parameter.StringParameters;
-
-import java.io.File;
-
-class CommandlineHandler {
-
- final Parser parser = new Parser();
-
- private final NullParameter recursiveParameter = parser.add(
- new NullParameter("Enable recursive mode.")).addAliases("-r",
- "--recursive");
-
- private final StringParameters fileInputPatternsParameter = parser.add(
- new StringParameters("File input pattern.").addAliases("-i",
- "--input-pattern")).setMandatory();
-
- private final StringParameters splitPatternsParameter = parser
- .add(new StringParameters("File split regular expression."))
- .addAliases("-s", "--split-pattern").setMandatory();
-
- private final DirectoryParameter workingDirectoryParameter = parser.add(
- new DirectoryParameter("Working directory.")).addAliases("-w",
- "--working-directory");
-
- public TextSplittingOptions parseCommandlineArguments(final String[] args) {
-
- final TextSplittingOptions options = new TextSplittingOptions();
-
- if (!parser.parse(args))
- return null;
-
- if (recursiveParameter.isSpecified())
- options.recursive = true;
-
- if (workingDirectoryParameter.isSpecified())
- options.targetDirectory = workingDirectoryParameter.getValue();
- else
- options.targetDirectory = new File(System.getProperty("user.dir"));
-
- if (fileInputPatternsParameter.isSpecified())
- options.fileInputPatterns.addAll(fileInputPatternsParameter
- .getValue());
-
- if (splitPatternsParameter.isSpecified())
- options.textSplitPatterns.addAll(splitPatternsParameter.getValue());
-
- return options;
- }
-}