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 "; 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); } }