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); }
commandParsers = parser.addSubparsers() .metavar("COMMAND") .title("commands");
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); }
/** * The logic for running DiffyTool has been captured in a helper method that returns a boolean to facilitate unit testing. * Since System.exit terminates the JVM it would not be practical to test the main method. * * @param args the arguments from the command line input * @return true if two inputs were read with no differences, false if differences were found or an error was encountered */ protected static boolean runJolt( String[] args ) { ArgumentParser parser = ArgumentParsers.newArgumentParser( "jolt" ); Subparsers subparsers = parser.addSubparsers().help( "transform: given a Jolt transform spec, runs the specified transforms on the input data.\n" + "diffy: diff two JSON documents.\n" + "sort: sort a JSON document alphabetically for human readability." ); for ( Map.Entry<String, JoltCliProcessor> entry : JOLT_CLI_PROCESSOR_MAP.entrySet() ) { entry.getValue().intializeSubCommand( subparsers ); } Namespace ns; try { ns = parser.parseArgs( args ); } catch ( ArgumentParserException e ) { parser.handleError( e ); return false; } JoltCliProcessor joltToolProcessor = JOLT_CLI_PROCESSOR_MAP.get( args[0] ); if ( joltToolProcessor != null ) { return joltToolProcessor.process( ns ); } else { // TODO: error message, print usage. although I don't think it will ever get to this point. return false; } }
Logging.addLoggingGroup(parser); Subparsers subparsers = parser.addSubparsers() .metavar("COMMAND") .title("commands");
.action(Arguments.storeTrue()); Subparsers subparsers = parser.addSubparsers() .title("subcommands") .dest("command")
public static Set<ClassPath.ClassInfo> findSubcommands(ArgumentParser parser) throws IOException { Subparsers subparsers = parser.addSubparsers() .dest(Constants.COMMAND) .help("FEATURE") .title("subcommands") .description("Specify which feature to perform") .metavar("COMMAND"); Set<ClassPath.ClassInfo> allClasses = new TreeSet<>(Comparator.comparing(ClassPath.ClassInfo::getName)); ClassPath classpath = ClassPath.from(CommandLine.class.getClassLoader()); allClasses.addAll(classpath.getTopLevelClasses("com.salesforce.dockerfileimageupdate.subcommands.impl")); allClasses = allClasses.stream() .filter(classInfo -> !classInfo.getName().endsWith("Test")) .collect(Collectors.toSet()); for (ClassPath.ClassInfo classInfo : allClasses) { handleAnnotations(classInfo, subparsers); } return allClasses; }
public static Set<ClassPath.ClassInfo> findSubcommands(ArgumentParser parser) throws IOException { Subparsers subparsers = parser.addSubparsers() .dest(Constants.COMMAND) .help("FEATURE") .title("subcommands") .description("Specify which feature to perform") .metavar("COMMAND"); Set<ClassPath.ClassInfo> allClasses = new TreeSet<>(Comparator.comparing(ClassPath.ClassInfo::getName)); ClassPath classpath = ClassPath.from(CommandLine.class.getClassLoader()); allClasses.addAll(classpath.getTopLevelClasses("com.salesforce.dockerfileimageupdate.subcommands.impl")); allClasses = allClasses.stream() .filter(classInfo -> !classInfo.getName().endsWith("Test")) .collect(Collectors.toSet()); for (ClassPath.ClassInfo classInfo : allClasses) { handleAnnotations(classInfo, subparsers); } return allClasses; }
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); }
parser.description("Jannovar CLI performs a series of VCF annotation tasks, including predicted " + "molecular impact of variants and annotation of compatible Mendelian inheritance."); Subparsers subParsers = parser.addSubparsers(); JannovarAnnotatePosOptions.setupParser(subParsers); JannovarAnnotateCSVOptions.setupParser(subParsers);
commandParsers = parser.addSubparsers() .metavar("COMMAND") .title("commands");
.setDefault(Boolean.FALSE); Subparsers subparsers = parser.addSubparsers();