IMI-Application/src/main/java/de/vanitasvitae/imi/codes/Main.java

49 lines
1.4 KiB
Java

package de.vanitasvitae.imi.codes;
import org.apache.commons.cli.CommandLine;
import org.apache.commons.cli.CommandLineParser;
import org.apache.commons.cli.DefaultParser;
import org.apache.commons.cli.HelpFormatter;
import org.apache.commons.cli.Options;
import org.apache.commons.cli.ParseException;
public class Main {
private static final String NAME_JAR = "imicodes";
private static final String HELP_HEADER = "Generate ID codes for sample tubes.";
private static final String HELP_FOOTER = "\nAuthor: Paul Schaub <paul.schaub@wwu.de>";
public static void main(String[] args) {
Options options = Arguments.getCommandLineOptions();
CommandLineParser parser = new DefaultParser();
CommandLine arguments;
try {
arguments = parser.parse(options, args);
} catch (ParseException e) {
System.out.println(e.getMessage());
printHelp(options);
return;
}
if (arguments.hasOption(Arguments.HELP)) {
printHelp(options);
return;
}
}
/**
* Print a descriptive help text to the console.
*
* @param options {@link Options} for which we want to print a help text.
*/
private static void printHelp(Options options) {
HelpFormatter formatter = new HelpFormatter();
formatter.printHelp(NAME_JAR, HELP_HEADER, options, HELP_FOOTER, true);
}
}