@Override public void configure(Subparser subparser) { for (AbstractLiquibaseCommand<T> subcommand : subcommands.values()) { final Subparser cmdParser = subparser.addSubparsers() .addParser(subcommand.getName()) .setDefault(COMMAND_NAME_ATTR, subcommand.getName()) .description(subcommand.getDescription()); subcommand.configure(cmdParser); } }
@Override public void configure(Subparser subparser) { for (AbstractLiquibaseCommand<T> subcommand : subcommands.values()) { final Subparser cmdParser = subparser.addSubparsers() .addParser(subcommand.getName()) .setDefault(COMMAND_NAME_ATTR, subcommand.getName()) .description(subcommand.getDescription()); subcommand.configure(cmdParser); } }
private void addCommand(Command command) { commands.put(command.getName(), command); parser.addSubparsers().help("available commands"); final Subparser subparser = parser.addSubparsers().addParser(command.getName(), false); command.configure(subparser); addHelp(subparser); subparser.description(command.getDescription()) .setDefault(COMMAND_NAME_ATTR, command.getName()) .defaultHelp(true); }
private void addCommand(Command command) { commands.put(command.getName(), command); parser.addSubparsers().help("available commands"); final Subparser subparser = parser.addSubparsers().addParser(command.getName(), false); command.configure(subparser); addHelp(subparser); subparser.description(command.getDescription()) .setDefault(COMMAND_NAME_ATTR, command.getName()) .defaultHelp(true); }
/** * Initialize the arg parser for the Sort sub command * * @param subparsers The Subparsers object to attach the new Subparser to */ @Override public void intializeSubCommand( Subparsers subparsers ) { Subparser sortParser = subparsers.addParser( "sort" ) .description( "Jolt CLI Sort Tool. This tool will ingest one JSON input (from a file or standard input) and " + "perform the Jolt sort operation on it. The sort order is standard alphabetical ascending, with a " + "special case for \"~\" prefixed keys to be bumped to the top. The program will return an exit code " + "of 0 if the sort operation is performed successfully or a 1 if an error is encountered." ) .defaultHelp( true ); sortParser.addArgument( "input" ).help( "File path to the input JSON that the sort operation should be performed on. " + "This file should contain valid JSON. " + "If this argument is not specified then standard input will be used." ) .type( Arguments.fileType().verifyExists().verifyIsFile().verifyCanRead() ) .nargs( "?" ).setDefault( (File) null ).required( false ); // these last two method calls make input optional sortParser.addArgument( "-u" ).help( "Turns off pretty print for the output. Output will be raw json with no formatting." ) .action( Arguments.storeTrue() ); }
/** * Initialize the arg parser for the Transform sub command * * @param subparsers The Subparsers object to attach the new Subparser to */ @Override public void intializeSubCommand( Subparsers subparsers ) { Subparser transformParser = subparsers.addParser( "transform" ) .description( "Jolt CLI Transform Tool. This tool will ingest a JSON spec file and an JSON input (from a file or " + "standard input) and run the transforms specified in the spec file on the input. The program will return an " + "exit code of 0 if the input is transformed successfully or a 1 if an error is encountered" ) .defaultHelp( true ); File nullFile = null; transformParser.addArgument( "spec" ).help( "File path to Jolt Transform Spec to execute on the input. " + "This file should contain valid JSON." ) .type( Arguments.fileType().verifyExists().verifyIsFile().verifyCanRead() ); transformParser.addArgument( "input" ).help( "File path to the input JSON for the Jolt Transform operation. " + "This file should contain valid JSON. " + "If this argument is not specified then standard input will be used." ) .type( Arguments.fileType().verifyExists().verifyIsFile().verifyCanRead() ) .nargs( "?" ).setDefault( nullFile ); // these last two method calls make input optional transformParser.addArgument( "-u" ).help( "Turns off pretty print for the output. Output will be raw json with no formatting." ) .action( Arguments.storeTrue() ); }
public Subparser parser(Subparsers subCommands, CliContext cliContext) { final Subparser subparser = addSubparser(subCommands, name().toLowerCase(), cliContext) .setDefault(SUBCOMMAND_DEST, this) .description(description) .help(description); if (alias != null && !alias.isEmpty()) { subparser.aliases(alias); } return subparser; } }
/** * Initialize the arg parser for the Diffy sub command * * @param subparsers The Subparsers object to attach the new Subparser to */ @Override public void intializeSubCommand( Subparsers subparsers ) { Subparser diffyParser = subparsers.addParser( "diffy" ) .description( "Jolt CLI Diffy Tool. This tool will ingest two JSON inputs (from files or standard input) and " + "perform the Jolt Diffy operation to detect any differences. The program will return an exit code of " + "0 if no differences are found or a 1 if a difference is found or an error is encountered." ) .defaultHelp( true ); diffyParser.addArgument( "filePath1" ).help( "File path to feed to Input #1 for the Diffy operation. " + "This file should contain valid JSON." ) .type( Arguments.fileType().verifyExists().verifyIsFile().verifyCanRead() ); diffyParser.addArgument( "filePath2" ).help( "File path to feed to Input #2 for the Diffy operation. " + "This file should contain valid JSON. " + "If this argument is not specified then standard input will be used." ) .type( Arguments.fileType().verifyExists().verifyIsFile().verifyCanRead() ) .nargs( "?" ).setDefault( (File) null ); // these last two method calls make filePath2 optional diffyParser.addArgument( "-s" ).help( "Diffy will suppress output and run silently." ) .action( Arguments.storeTrue() ); diffyParser.addArgument( "-a" ).help( "Diffy will not consider array order when detecting differences" ) .action( Arguments.storeTrue() ); }
public Subparser parser(Subparsers subCommands, CliContext cliContext) { final Subparser subparser = addSubparser(subCommands, name().toLowerCase(), cliContext) .setDefault(SUBCOMMAND_DEST, this) .description(description) .help(description); if (alias != null && !alias.isEmpty()) { subparser.aliases(alias); } return subparser; } }
public Subparser parser(Subparsers subCommands, CliContext cliContext) { final Subparser subparser = addSubparser(subCommands, name().toLowerCase(), cliContext) .setDefault(SUBCOMMAND_DEST, this) .description(description) .help(description); if (alias != null && !alias.isEmpty()) { subparser.aliases(alias); } return subparser; } }
public Subparser parser(Subparsers subCommands, CliContext cliContext) { final Subparser subparser = addSubparser(subCommands, name().toLowerCase(), cliContext) .setDefault(COMMAND_DEST, this) .description(description) .help(description); if (alias != null && !alias.isEmpty()) { subparser.aliases(alias); } return subparser; }
public Subparser parser(Subparsers subCommands, CliContext cliContext) { final Subparser subparser = addSubparser(subCommands, name().toLowerCase(), cliContext) .setDefault(SUBCOMMAND_DEST, this) .description(description) .help(description); if (alias != null && !alias.isEmpty()) { subparser.aliases(alias); } return subparser; } }
private void addCommandToParser(Subparser subparser, CommandMetadata subCommand, List<String> commandRoot) { Subparser parser = subparser.addSubparsers() .addParser(subCommand.getName()) .description(subCommand.getDescription()) .setDefault(COMMAND_NAME_ATTR, ImmutableList.builder() .addAll(commandRoot) .add(subCommand.getName()) .build()); for (OptionMetadata option : subCommand.getAllOptions()) { addOptionToParser(parser, option); } super.configure(parser); }
@Override public void configure(final Subparser subparser) { for (AbstractFlywayCommand<T> subCommand : subCommands.values()) { final Subparser cmdParser = subparser.addSubparsers() .addParser(subCommand.getName()) .setDefault(COMMAND_NAME_ATTR, subCommand.getName()) .description(subCommand.getDescription()); subCommand.configure(cmdParser); } }
@Override public void configure(Subparser subparser) { for (AbstractLiquibaseCommand<T> subcommand : subcommands.values()) { final Subparser cmdParser = subparser.addSubparsers() .addParser(subcommand.getName()) .setDefault(COMMAND_NAME_ATTR, subcommand.getName()) .description(subcommand.getDescription()); subcommand.configure(cmdParser); } }
@Override public void configure(Subparser subparser) { for (CommandMetadata subCommand : CLI.getMetadata().getDefaultGroupCommands()) { addCommandToParser(subparser, subCommand, ImmutableList.of()); } for (CommandGroupMetadata commandGroup : CLI.getMetadata().getCommandGroups()) { Subparser parser = subparser.addSubparsers() .addParser(commandGroup.getName()) .description(commandGroup.getDescription()); for (CommandMetadata subCommand : commandGroup.getCommands()) { addCommandToParser(parser, subCommand, ImmutableList.of(commandGroup.getName())); } } }
private void addCommand(Command command) { commands.put(command.getName(), command); parser.addSubparsers().help("available commands"); final Subparser subparser = parser.addSubparsers().addParser(command.getName(), false); command.configure(subparser); addHelp(subparser); subparser.description(command.getDescription()) .setDefault(COMMAND_NAME_ATTR, command.getName()) .defaultHelp(true); }
@Override public void configure(Subparser subparser) { Subparser parser = subparser.addSubparsers() .addParser(consoleCommand.getName()) .setDefault(COMMAND_NAME_ATTR, consoleCommand.getName()) .description(consoleCommand.getDescription()); consoleCommand.configure(parser); cliCommand.configure(subparser); }
private void addCommand(Subparser subparser, Command command) { commands.put(command.getName(), command); subparser.addSubparsers().help("available commands"); final Subparser commandSubparser = subparser.addSubparsers().addParser(command.getName(), false); command.configure(commandSubparser); commandSubparser.addArgument("-h", "--help") .action(new HelpArgumentAction()) .help("show this help message and exit") .setDefault(Arguments.SUPPRESS); commandSubparser.description(command.getDescription()) .setDefault(COMMAND_NAME_ATTR, command.getName()) .defaultHelp(true); }
/** * Setup {@link ArgumentParser} * * @param subParsers * {@link Subparsers} to setup */ public static void setupParser(Subparsers subParsers) { BiFunction<String[], Namespace, AnnotatePositionCommand> handler = (argv, args) -> { try { return new AnnotatePositionCommand(argv, args); } catch (CommandLineParsingException e) { throw new UncheckedJannovarException("Could not parse command line", e); } }; Subparser subParser = subParsers.addParser("annotate-pos", true) .help("annotate genomic changes given on the command line").setDefault("cmd", handler); subParser.description("Perform annotation of genomic changes given on the command line"); ArgumentGroup requiredGroup = subParser.addArgumentGroup("Required arguments"); requiredGroup.addArgument("-d", "--database").help("Path to database .ser file").required(true); requiredGroup.addArgument("-c", "--genomic-change").help("Genomic change to annotate, you can give multiple ones") .action(Arguments.append()).required(true); subParser.epilog("Example: java -jar Jannovar.jar annotate-pos -d hg19_refseq.ser -c 'chr1:12345C>A'"); JannovarAnnotationOptions.setupParser(subParser); }