Package net.sourceforge.argparse4j.inf

Examples of net.sourceforge.argparse4j.inf.Subparser


        ap.addArgument("-1", "--1").metavar("X").nargs(2).help(h);
        ap.addArgument("-2").metavar("X").nargs("*").help(h);
        ap.addArgument("-3").metavar("X").nargs("+").help(h);
        ap.addArgument("-4").metavar("X").nargs("?").help(h);
        Subparsers subparsers = ap.addSubparsers().help("sub-command help");
        Subparser parserA = subparsers.addParser("install");
        parserA.help("parserA help");
        Subparser parserB = subparsers.addParser("search");

        // StringWriter out = new StringWriter();
        ap.printHelp(new PrintWriter(System.out));
    }
View Full Code Here


    .setDefault(FeatureControl.SUPPRESS);

  Subparsers subparsers = parser.addSubparsers().description("Command to be executed.");

  /* =================Download Arguments============== */
  Subparser downloadParser = subparsers.addParser("download", true).description("download file(s)!")
    .setDefault("command", COMMAND.DOWNLOAD);
  downloadParser.addArgument("packagename").nargs("+").help("applications to download");

  /* =================Check-In Arguments============== */
  subparsers.addParser("checkin", true).description("checkin section!").setDefault("command", COMMAND.CHECKIN);

  /* =================List Arguments============== */
  Subparser listParser = subparsers.addParser("list", true)
    .description("Lists sub-categories and applications within them!").setDefault("command", COMMAND.LIST);
  listParser.addArgument("category").required(true).help("defines category");
  listParser.addArgument("-s", "--subcategory").required(false).help("defines sub-category");
  listParser.addArgument("-o", "--offset").type(Integer.class).required(false)
    .help("offset to define where list begins");
  listParser.addArgument("-n", "--number").type(Integer.class).required(false)
    .help("how many app will be listed");

  /* =================Categories Arguments============== */
  Subparser categoriesParser = subparsers.addParser("categories", true)
    .description("list categories for browse section").setDefault("command", COMMAND.CATEGORIES);

  /* =================Search Arguments============== */
  Subparser searchParser = subparsers.addParser("search", true).description("search for query!")
    .setDefault("command", COMMAND.SEARCH);
  searchParser.addArgument("query").help("query to be searched");
  searchParser.addArgument("-o", "--offset").type(Integer.class).required(false)
    .help("offset to define where list begins");
  searchParser.addArgument("-n", "--number").type(Integer.class).required(false)
    .help("how many app will be listed");

  /* =================Permissions Arguments============== */
  Subparser permissionsParser = subparsers.addParser("permissions", true)
    .description("list permissions of given application").setDefault("command", COMMAND.PERMISSIONS);
  permissionsParser.addArgument("package").nargs("+").help("applications whose permissions to be listed");

  /* =================Reviews Arguments============== */
  Subparser reviewsParser = subparsers.addParser("reviews", true)
    .description("lists reviews of given application").setDefault("command", COMMAND.REVIEWS);
  reviewsParser.addArgument("package").help("application whose reviews to be listed");
  reviewsParser.addArgument("-s", "--sort").choices(new ReviewSortChoice()).type(new ReviewSort())
    .required(false).help("sorting type").setDefault(REVIEW_SORT.HELPFUL);
  reviewsParser.addArgument("-o", "--offset").type(Integer.class).required(false)
    .help("offset to define where list begins");
  reviewsParser.addArgument("-n", "--number").type(Integer.class).required(false)
    .help("how many reviews will be listed");
 
  /* =================Recommendation Arguments============== */
  Subparser recommendationParser = subparsers.addParser("recommendations", true)
    .description("lists recommended apps of given application").setDefault("command", COMMAND.RECOMMENDATIONS);
  recommendationParser.addArgument("package").help("application whose recommendations to be listed");
  recommendationParser.addArgument("-t", "--type").choices(new ReleationChoice()).type(new RecommendationType())
    .required(false).help("releations type").setDefault(RECOMMENDATION_TYPE.ALSO_INSTALLED);
  recommendationParser.addArgument("-o", "--offset").type(Integer.class).required(false)
    .help("offset to define where list begins");
  recommendationParser.addArgument("-n", "--number").type(Integer.class).required(false)
    .help("how many recommendations will be listed");
 
  /* =================Register Arguments============== */
  subparsers.addParser("register", true).description("registers device so that can be seen from web!")
    .setDefault("command", COMMAND.REGISTER);
View Full Code Here

        ap.addArgument("-f");
        ap.addArgument("--baz").nargs(2);
        ap.addArgument("x");
        ap.addArgument("y").nargs(2);
        Subparsers subparsers = ap.addSubparsers();
        Subparser subparser = subparsers.addParser("add");
        subparser.addArgument("--foo");
        subparser.addArgument("--bar").action(Arguments.storeTrue());

        Namespace res = ap.parseArgs("-f foo @target/test-classes/args.txt --baz alpha @target/test-classes/args2.txt x y1 @target/test-classes/args3.txt add --bar @target/test-classes/args4.txt".split(" "));
        assertEquals("bar", res.getString("f"));
        assertEquals(list("alpha", "bravo"), res.getList("baz"));
        assertEquals("x", res.getString("x"));
View Full Code Here

    @Test
    public void testParseArgsWithSubparsers() throws ArgumentParserException {
        ap.addArgument("-f");
        Subparsers subparsers = ap.addSubparsers();
        Subparser parserA = subparsers.addParser("install");
        parserA.addArgument("pkg1");
        parserA.setDefault("func", "install");
        Subparser parserB = subparsers.addParser("search");
        parserB.addArgument("pkg2");
        parserB.setDefault("func", "search");
        Namespace res = ap.parseArgs("install aria2".split(" "));
        assertEquals("aria2", res.get("pkg1"));
        assertEquals("install", res.get("func"));
    }
View Full Code Here

    }

    @Test
    public void testParseArgsWithSubparsersAlias() throws ArgumentParserException {
        Subparsers subparsers = ap.addSubparsers();
        Subparser checkout = subparsers.addParser("checkout").aliases("co");
        checkout.setDefault("func", "checkout");
        Namespace res = ap.parseArgs("co".split(" "));
        assertEquals("checkout", res.get("func"));
    }
View Full Code Here

    @Test
    public void testParseArgsWithSubparsersAmbiguousCommand() throws ArgumentParserException {
        Namespace res;
        Subparsers subparsers = ap.addSubparsers();
        Subparser checkout = subparsers.addParser("clone")
                .setDefault("func", "clone");
        Subparser clean = subparsers.addParser("clean")
                .setDefault("func", "clean");

        res = ap.parseArgs("clo".split(" "));
        assertEquals("clone", res.get("func"));
View Full Code Here

        ap.addArgument("file");
        assertEquals(String.format(
                TextHelper.LOCALE_ROOT,
                "usage: argparse4j [-h] [-a A] -b B (-c C | -d D) file%n"),
                ap.formatUsage());
        Subparser foosub = ap.addSubparsers().addParser("foo");
        foosub.addArgument("hash");
        assertEquals(String.format(
                TextHelper.LOCALE_ROOT,
                "usage: argparse4j [-h] [-a A] -b B (-c C | -d D) file {foo} ...%n"),
                ap.formatUsage());
        assertEquals(String.format(
                TextHelper.LOCALE_ROOT,
                "usage: argparse4j -b B (-c C | -d D) file foo [-h] hash%n"),
                foosub.formatUsage());
        Subparser bazsub = foosub.addSubparsers().addParser("baz");
        assertEquals(String.format(
                TextHelper.LOCALE_ROOT,
                "usage: argparse4j -b B (-c C | -d D) file foo hash baz [-h]%n"),
                bazsub.formatUsage());
    }
View Full Code Here

        mutex2.addArgument("-g");
        ap.addArgument("s");
        ap.addArgument("t");
        ap.addArgument("u").help(Arguments.SUPPRESS);
        Subparsers subparsers = ap.addSubparsers();
        Subparser sap = subparsers.addParser("add");
        sap.addArgument("-i").help(Arguments.SUPPRESS);
        sap.addArgument("-j");

        assertEquals(String.format(
                     TextHelper.LOCALE_ROOT,
                     "usage: argparse4j [-h] [--foo FOO] [-b B] [-d D] (-f F | -g G) s t {add}%n"
                   + "                  ...%n"
                   + "%n"
                   + "positional arguments:%n"
                   + "  s%n"
                   + "  t%n"
                   + "  {add}%n"
                   + "%n"
                   + "optional arguments:%n"
                   + "  -h, --help             show this help message and exit%n"
                   + "  -b B%n"
                   + "%n"
                   + "group:%n"
                   + "  --foo FOO%n"
                   + "%n"
                   + "mutex1:%n"
                   + "  -d D%n"
                   + "%n"
                   + "mutex2:%n"
                   + "  -f F%n"
                   + "  -g G%n"),
                   ap.formatHelp());
        // Check upper parsers's suppressed required arguments are not shown.
        assertEquals(String.format(
                     TextHelper.LOCALE_ROOT,
                     "usage: argparse4j (-f F | -g G) s t add [-h] [-j J]%n"
                   + "%n"
                   + "optional arguments:%n"
                   + "  -h, --help             show this help message and exit%n"
                   + "  -j J%n"),
                sap.formatHelp());
    }
View Full Code Here

    @Test
    public void testSubparserFormatHelp() throws ArgumentParserException {
        ap.addArgument("--bar");
        Subparsers subparsers = ap.addSubparsers();
        Subparser parser = subparsers.addParser("install");
        parser.description("This is sub-command of argparser4j.").epilog(
                "This is epilog of sub-command.");
        parser.addArgument("--foo");
        assertEquals(String.format(
                  TextHelper.LOCALE_ROOT,
                  "usage: argparse4j install [-h] [--foo FOO]%n"
                + "%n"
                + "This is sub-command of argparser4j.%n"
                + "%n"
                + "optional arguments:%n"
                + "  -h, --help             show this help message and exit%n"
                + "  --foo FOO%n"
                + "%n"
                + "This is epilog of sub-command.%n"),
                parser.formatHelp());
    }
View Full Code Here

    @Test
    public void testSubparserFormatHelpWithDefaultHelp()
            throws ArgumentParserException {
        ap.addArgument("--bar");
        Subparsers subparsers = ap.addSubparsers();
        Subparser parser = subparsers.addParser("install").defaultHelp(true);
        parser.addArgument("--foo").setDefault("alpha");
        assertEquals(String.format(
                  TextHelper.LOCALE_ROOT,
                  "usage: argparse4j install [-h] [--foo FOO]%n"
                + "%n"
                + "optional arguments:%n"
                + "  -h, --help             show this help message and exit%n"
                + "  --foo FOO              (default: alpha)%n"),
                parser.formatHelp());
    }
View Full Code Here

TOP

Related Classes of net.sourceforge.argparse4j.inf.Subparser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.