Example usage for org.apache.commons.cli HelpFormatter HelpFormatter

List of usage examples for org.apache.commons.cli HelpFormatter HelpFormatter

Introduction

In this page you can find the example usage for org.apache.commons.cli HelpFormatter HelpFormatter.

Prototype

HelpFormatter

Source Link

Usage

From source file:jlite.cli.JobMatch.java

public static void main(String[] args) {
    System.out.println(); // extra line
    CommandLineParser parser = new GnuParser();
    Options options = setupOptions();/*from   ww w. j  a  va2 s.  c o  m*/
    HelpFormatter helpFormatter = new HelpFormatter();
    helpFormatter.setSyntaxPrefix("Usage: ");
    CommandLine line = null;
    try {
        line = parser.parse(options, args);
        if (line.hasOption("help")) {
            helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER, false);
            System.out.println(); // extra line
            System.exit(0);
        } else {
            if (line.hasOption("xml")) {
                System.out.println("<output>");
            }
            String[] remArgs = line.getArgs();
            if (remArgs.length == 1) {
                run(remArgs[0], line);
            } else if (remArgs.length == 0) {
                throw new MissingArgumentException("Missing required argument: <jdl_file>");
            } else {
                throw new UnrecognizedOptionException("Unrecognized extra arguments");
            }
        }
    } catch (ParseException e) {
        System.err.println(e.getMessage() + "\n");
        helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER, false);
        System.out.println(); // extra line
        System.exit(-1);
    } catch (Exception e) {
        if (line.hasOption("xml")) {
            System.out.println("<error>" + e.getMessage() + "</error>");
        } else {
            System.err.println(e.getMessage());
        }
    } finally {
        if (line.hasOption("xml")) {
            System.out.println("</output>");
        }
    }
    System.out.println(); // extra line
}

From source file:jlite.cli.ProxyInfo.java

public static void main(String[] args) {
    System.out.println(); // extra line
    CommandLineParser parser = new GnuParser();
    Options options = setupOptions();/*from  w w w .  j av a2  s . c om*/
    HelpFormatter helpFormatter = new HelpFormatter();
    helpFormatter.setSyntaxPrefix("Usage: ");
    CommandLine line = null;
    try {
        line = parser.parse(options, args);
        if (line.hasOption("help")) {
            helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER + "\n", false);
            System.out.println(); // extra line
            System.exit(0);
        }
        if (line.hasOption("xml")) {
            System.out.println("<output>");
        }
        run(line);
    } catch (ParseException e) {
        System.err.println(e.getMessage() + "\n");
        helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER + "\n", false);
        System.out.println(); // extra line
        System.exit(-1);
    } catch (Exception e) {
        if (line.hasOption("xml")) {
            System.out.println("<error>" + e.getMessage() + "</error>");
        } else {
            System.err.println(e.getMessage());
        }
    } finally {
        if (line.hasOption("xml")) {
            System.out.println("</output>");
        }
    }
    System.out.println(); // extra line
}

From source file:com.google.cloud.monitoring.v3.MetricServiceSmokeTest.java

public static void main(String args[]) {
    Logger.getLogger("").setLevel(Level.WARNING);
    try {//w  w w. ja  v  a 2s . c o m
        Options options = new Options();
        options.addOption("h", "help", false, "show usage");
        options.addOption(Option.builder().longOpt("project_id").desc("Project id").hasArg()
                .argName("PROJECT-ID").required(true).build());
        CommandLine cl = (new DefaultParser()).parse(options, args);
        if (cl.hasOption("help")) {
            HelpFormatter formater = new HelpFormatter();
            formater.printHelp("MetricServiceSmokeTest", options);
        }
        executeNoCatch(cl.getOptionValue("project_id"));
        System.out.println("OK");
    } catch (Exception e) {
        System.err.println("Failed with exception:");
        e.printStackTrace(System.err);
        System.exit(1);
    }
}

From source file:edu.ucsb.cs.eager.sa.cerebro.ProfessorX.java

public static void main(String[] args) {
    Options options = new Options();
    options.addOption("i", "input-file", true, "Path to input xml file");
    options.addOption("r", "root-path", true, "Root path of all Git repositories");

    CommandLine cmd;//from   w  w w .  j a  v a 2 s .co  m
    try {
        CommandLineParser parser = new BasicParser();
        cmd = parser.parse(options, args);
    } catch (ParseException e) {
        System.err.println("Error: " + e.getMessage() + "\n");
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp("Cerebro", options);
        return;
    }

    String inputFileName = cmd.getOptionValue("i");
    if (inputFileName == null) {
        System.err.println("input file path is required");
        return;
    }

    String rootPath = cmd.getOptionValue("r");
    if (rootPath == null) {
        System.err.println("root path is required");
        return;
    }

    File inputFile = new File(inputFileName);
    DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    Document doc;
    try {
        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
        doc = dBuilder.parse(inputFile);
    } catch (Exception e) {
        System.err.println(e.getMessage());
        e.printStackTrace();
        return;
    }

    NodeList repoList = doc.getElementsByTagName("repo");
    for (int i = 0; i < repoList.getLength(); i++) {
        Element repo = (Element) repoList.item(i);
        String name = repo.getElementsByTagName("name").item(0).getTextContent();
        String classPath = repo.getElementsByTagName("classpath").item(0).getTextContent();
        Set<String> classes = new LinkedHashSet<String>();
        NodeList classesList = repo.getElementsByTagName("classes").item(0).getChildNodes();
        for (int j = 0; j < classesList.getLength(); j++) {
            if (!(classesList.item(j) instanceof Element)) {
                continue;
            }
            classes.add(classesList.item(j).getTextContent());
        }
        analyzeRepo(rootPath, name, classPath, classes);
    }
}

From source file:it.anyplace.sync.relay.server.Main.java

public static void main(String[] args) throws ParseException, Exception {
    Options options = new Options();
    options.addOption("r", "relay-server", true, "set relay server to serve for");
    options.addOption("p", "port", true, "set http server port");
    options.addOption("h", "help", false, "print help");
    CommandLineParser parser = new DefaultParser();
    CommandLine cmd = parser.parse(options, args);

    if (cmd.hasOption("h")) {
        HelpFormatter formatter = new HelpFormatter();
        formatter.printHelp("s-client", options);
        return;/*from  w w w  .  jav a2 s .  co m*/
    }
    int port = cmd.hasOption("p") ? Integer.parseInt(cmd.getOptionValue("p")) : 22080;
    String relayServer = firstNonNull(emptyToNull(cmd.getOptionValue("r")), "relay://localhost");
    logger.info("starting http relay server :{} for relay server {}", port, relayServer);
    HttpRelayServer httpRelayServer = new HttpRelayServer(
            DeviceAddress.newBuilder().setDeviceId("relay").setAddress(relayServer).build().getSocketAddress());
    httpRelayServer.start(port);
    httpRelayServer.join();
}

From source file:io.proscript.jlight.JLight.java

public static void main(String[] args) throws IOException {

    CommandLineParser parser = new DefaultParser();
    Options options = new Options();

    Option host = new Option("h", "host", true, "Host of the HTTP server (default 127.0.0.1)");
    Option port = new Option("p", "port", true, "Port of the HTTP server (default 9000)");

    Option main = new Option("c", "class", true, "Application to run, e.g. org.vendor.class");
    Option help = new Option("h", "help", false, "Display help and exit");
    Option version = new Option("v", "version", false, "Display JLight version");

    options.addOption(host);//  www. j a v  a2  s  .  c  o  m
    options.addOption(port);

    options.addOption(main);
    options.addOption(help);
    options.addOption(version);

    CommandLine line;

    try {
        line = parser.parse(options, args);

        if (line.hasOption("h")) {
            HelpFormatter formatter = new HelpFormatter();
            Version.print();
            formatter.printHelp("jlight", options);
            return;
        }

        if (line.hasOption("v")) {
            Version.print();
            return;
        }

        if (!line.hasOption("c")) {
            throw new ParseException("Option 'class' is required");
        }

        Runtime.run(line);
    } catch (ParseException exp) {
        System.err.println(exp.getMessage());
    }
}

From source file:com.uber.tchannel.ping.PingServer.java

public static void main(String[] args) throws Exception {
    Options options = new Options();
    options.addOption("p", "port", true, "Server Port to connect to");
    options.addOption("?", "help", false, "Usage");
    HelpFormatter formatter = new HelpFormatter();

    CommandLineParser parser = new DefaultParser();
    CommandLine cmd = parser.parse(options, args);

    if (cmd.hasOption("?")) {
        formatter.printHelp("PingClient", options, true);
        return;// w ww  .  j a  va  2s . com
    }

    int port = Integer.parseInt(cmd.getOptionValue("p", "8888"));

    System.out.println(String.format("Starting server on port: %d", port));
    new PingServer(port).run();
    System.out.println("Stopping server...");
}

From source file:jlite.cli.ProxyInit.java

public static void main(String[] args) {
    CommandLineParser parser = new GnuParser();
    Options options = setupOptions();/*from w w  w.j a v a  2  s  .  c o  m*/
    HelpFormatter helpFormatter = new HelpFormatter();
    helpFormatter.setSyntaxPrefix("Usage: ");
    CommandLine line = null;
    try {
        line = parser.parse(options, args);
        if (line.hasOption("help")) {
            System.out.println(); // extra line
            helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER + "\n", false);
            System.out.println(); // extra line
            System.exit(0);
        } else {
            if (line.hasOption("xml")) {
                System.out.println("<output>");
            }
            String[] remArgs = line.getArgs();
            if (remArgs.length > 0) {
                run(remArgs, line);
            } else {
                throw new MissingArgumentException("Missing required argument: <voms>[:<command>]");
            }
        }
    } catch (ParseException e) {
        System.err.println("\n" + e.getMessage() + "\n");
        helpFormatter.printHelp(100, COMMAND, "\noptions:", options, "\n" + CLI.FOOTER + "\n", false);
        System.out.println(); // extra line
        System.exit(-1);
    } catch (Exception e) {
        if ((line != null) && (line.hasOption("xml"))) {
            System.out.println("<error>" + e.getMessage() + "</error>");
        } else {
            System.err.println(e.getMessage());
        }
    } finally {
        if (line.hasOption("xml")) {
            System.out.println("</output>");
        }
    }
    System.out.println(); // extra line
}

From source file:gr.kzps.FileCrypto.executor.Executor.java

public static void main(String[] args) {
    CommandParser commandParser = new CommandParser(args);
    String inputDir, outputDir, cryptoKey = null;

    try {/*from   w  w  w . j a va 2 s  .  c o m*/
        CommandLine cmd = commandParser.parseArgs();

        if (cmd.hasOption(ArgumentsName.HELP_L)) {
            HelpFormatter formatter = new HelpFormatter();
            formatter.printHelp("FileCrypto", commandParser.getOptions());

        } else if (cmd.hasOption(ArgumentsName.DECRYPT_L)) {
            log.info("Decrypt operation");
            inputDir = getCryptoDir(cmd, ArgumentsName.INPUTDIR_L);
            outputDir = getCryptoDir(cmd, ArgumentsName.OUTPUTDIR_L);
            try {
                cryptoKey = getCryptoKey(cmd);
            } catch (NoCryptoKeyProvided ex) {
                System.err.println(ex.getMessage());
            }
            Integer threshold = getThreshold(cmd);
            callDispatcher(CryptoOperation.DECRYPT, inputDir, outputDir, threshold, cryptoKey);

        } else if (cmd.hasOption(ArgumentsName.ENCRYPT_L)) {
            log.info("Encrypt operation");
            inputDir = getCryptoDir(cmd, ArgumentsName.INPUTDIR_L);
            outputDir = getCryptoDir(cmd, ArgumentsName.OUTPUTDIR_L);
            try {
                cryptoKey = getCryptoKey(cmd);
            } catch (NoCryptoKeyProvided ex) {
                System.err.println(ex.getMessage());
            }
            Integer threshold = getThreshold(cmd);
            callDispatcher(CryptoOperation.ENCRYPT, inputDir, outputDir, threshold, cryptoKey);

        } else if (cmd.hasOption(ArgumentsName.VERSION_L)) {
            System.out.println("Version: " + VERSION);
        }
    } catch (ParseException ex) {
        log.error("Could not parse arguments! Reason: {}", new Object[] { ex.getStackTrace() });
    }
}

From source file:com.artistech.tuio.dispatch.TuioPublish.java

public static void main(String[] args) throws InterruptedException {
    //read off the TUIO port from the command line
    int tuio_port = 3333;
    int zeromq_port = 5565;
    TuioSink.SerializeType serialize_method = TuioSink.SerializeType.PROTOBUF;

    Options options = new Options();
    options.addOption("t", "tuio-port", true, "TUIO Port to listen on. (Default = 3333)");
    options.addOption("z", "zeromq-port", true, "ZeroMQ Port to publish on. (Default = 5565)");
    options.addOption("s", "serialize-method", true,
            "Serialization Method (JSON, OBJECT, Default = PROTOBUF).");
    options.addOption("h", "help", false, "Show this message.");
    HelpFormatter formatter = new HelpFormatter();

    try {/*  w w w .  j  ava 2s.  c o m*/
        CommandLineParser parser = new org.apache.commons.cli.BasicParser();
        CommandLine cmd = parser.parse(options, args);

        if (cmd.hasOption("help")) {
            formatter.printHelp("tuio-zeromq-publish", options);
            return;
        } else {
            if (cmd.hasOption("t") || cmd.hasOption("tuio-port")) {
                tuio_port = Integer.parseInt(cmd.getOptionValue("t"));
            }
            if (cmd.hasOption("z") || cmd.hasOption("zeromq-port")) {
                zeromq_port = Integer.parseInt(cmd.getOptionValue("z"));
            }
            if (cmd.hasOption("s") || cmd.hasOption("serialize-method")) {
                serialize_method = (TuioSink.SerializeType) Enum.valueOf(TuioSink.SerializeType.class,
                        cmd.getOptionValue("s"));
            }
        }
    } catch (ParseException | IllegalArgumentException ex) {
        System.err.println("Error Processing Command Options:");
        formatter.printHelp("tuio-zeromq-publish", options);
        return;
    }

    //start up the zmq publisher
    ZMQ.Context context = ZMQ.context(1);
    // We send updates via this socket
    try (ZMQ.Socket publisher = context.socket(ZMQ.PUB)) {
        // We send updates via this socket
        publisher.bind("tcp://*:" + Integer.toString(zeromq_port));

        //create a new TUIO sink connected at the specified port
        TuioSink sink = new TuioSink();
        sink.setSerializationType(serialize_method);
        TuioClient client = new TuioClient(tuio_port);

        System.out.println(
                MessageFormat.format("Listening to TUIO message at port: {0}", Integer.toString(tuio_port)));
        System.out.println(
                MessageFormat.format("Publishing to ZeroMQ at port: {0}", Integer.toString(zeromq_port)));
        System.out.println(MessageFormat.format("Serializing as: {0}", serialize_method));
        client.addTuioListener(sink);
        client.connect();

        //while not halted (infinite loop...)
        //read any available messages and publish
        while (!sink.mailbox.isHalted()) {
            ImmutablePair<String, byte[]> msg = sink.mailbox.getMessage();
            publisher.sendMore(msg.left + "." + serialize_method.toString());
            publisher.send(msg.right, 0);
        }

        //cleanup
    }
    context.term();
}