private Argument addArgument(final String... nameOrFlags) { final FeatureControl defaultControl = topLevel ? null : SUPPRESS; return globalArgs.addArgument(nameOrFlags).setDefault(defaultControl); } }
tables.addArgument("--tables") .action(Arguments.storeTrue()) .dest("tables") .help("Check for added or removed tables (default)"); tables.addArgument("--ignore-tables") .action(Arguments.storeFalse()) .dest("tables") columns.addArgument("--columns") .action(Arguments.storeTrue()) .dest("columns") .help("Check for added, removed, or modified columns (default)"); columns.addArgument("--ignore-columns") .action(Arguments.storeFalse()) .dest("columns") views.addArgument("--views") .action(Arguments.storeTrue()) .dest("views") .help("Check for added, removed, or modified views (default)"); views.addArgument("--ignore-views") .action(Arguments.storeFalse()) .dest("views") primaryKeys.addArgument("--primary-keys") .action(Arguments.storeTrue()) .dest("primary-keys") .help("Check for changed primary keys (default)"); primaryKeys.addArgument("--ignore-primary-keys")
public static void addLoggingGroup(ArgumentParser parser) { ArgumentGroup logging = parser.addArgumentGroup("logging") .description("Control the logging output."); logging.addArgument("--log-file") .type(File.class) .metavar("FILE") .help("write logging output to FILE"); logging.addArgument("--log-level") .type(String.class) .metavar("LEVEL") .help("include logging messages at LEVEL in log output"); logging.addArgument("--log-file-level") .type(String.class) .metavar("LEVEL") .help("include logging messages at LEVEL in log file (defaults to --log-level value)"); logging.addArgument("--debug-grapht") .action(Arguments.storeTrue()) .help("include debug output from Grapht"); }
public static void configureArguments(ArgumentParser parser) { ArgumentGroup group = parser.addArgumentGroup("script environment") .description("Options for interpreting Groovy scripts."); group.addArgument("-C", "--classpath") .dest("classpath") .action(Arguments.append()) .metavar("URL") .help("add URL (jar or dir) to script classpath"); group.addArgument("-D", "--define") .dest("properties") .type(new PropertyDef()) .action(Arguments.append()) .metavar("PROP=VALUE") .help("set property PROP"); }
.metavar("FILE") .help("read from delimited text FILE"); options.addArgument("-d", "--delimiter") .setDefault(",") .metavar("DELIM") .help("input file is delimited by DELIM"); options.addArgument("-H", "--header-lines") .type(Integer.class) .setDefault(0) .metavar("N") .help("skip N header lines at top of input file"); options.addArgument("-t", "--input-entity-type", "--event-type") .setDefault("rating") .metavar("TYPE") .help("read entitites of type TYPE from input file"); options.addArgument("--item-names") .type(File.class) .metavar("FILE")
private Argument addArgument(final String... nameOrFlags) { final FeatureControl defaultControl = topLevel ? null : SUPPRESS; return globalArgs.addArgument(nameOrFlags).setDefault(defaultControl); } }
private GlobalOptions(ArgumentParser parser, CliContext cliContext, boolean subCommand) { this.options = parser.addArgumentGroup("global options"); this.host = options.addArgument("-H", "--host") .help("Styx API host (can also be set with environment variable " + ENV_VAR_PREFIX + "_HOST)") .setDefault(subCommand ? FeatureControl.SUPPRESS : null) .setDefault(cliContext.env().get(ENV_VAR_PREFIX + "_HOST")) .action(Arguments.store()); this.json = options.addArgument("--json") .help("json output") .setDefault(subCommand ? FeatureControl.SUPPRESS : null) .action(Arguments.storeTrue()); this.plain = options.addArgument("-p", "--plain") .help("plain output") .setDefault(subCommand ? FeatureControl.SUPPRESS : null) .action(Arguments.storeTrue()); this.debug = options.addArgument("--debug") .help("debug output") .setDefault(subCommand ? FeatureControl.SUPPRESS : null) .action(Arguments.storeTrue()); }
/** * Setup {@link ArgumentParser} * * @param subParsers * {@link Subparsers} to setup */ public static void setupParser(ArgumentParser subParser) { ArgumentGroup optionalGroup = subParser.addArgumentGroup("Optional Arguments"); optionalGroup.addArgument("--show-all").help("Show all effects").setDefault(false).action(Arguments.storeTrue()); optionalGroup.addArgument("--no-3-prime-shifting").help("Disable shifting towards 3' of transcript") .dest("3_prime_shifting").setDefault(true).action(Arguments.storeFalse()); optionalGroup.addArgument("--3-letter-amino-acids").help("Enable usage of 3 letter amino acid codes") .setDefault(false).action(Arguments.storeTrue()); JannovarBaseOptions.setupParser(subParser); }
/** * Setup global {@link ArgumentParser} * * @param parser * {@link ArgumentParser} to setup */ public static void setupParser(ArgumentParser parser) { parser.version(Jannovar.getVersion()); parser.addArgument("--version").help("Show Jannovar version").action(Arguments.version()); ArgumentGroup verboseGroup = parser.addArgumentGroup("Verbosity Options"); verboseGroup.addArgument("--report-no-progress").help("Disable progress report, more quiet mode") .dest("report_progress").setDefault(true).action(Arguments.storeFalse()); verboseGroup.addArgument("-v", "--verbose").help("Enable verbose mode").dest("verbose").setDefault(false) .action(Arguments.storeTrue()); verboseGroup.addArgument("-vv", "--very-verbose").help("Enable very verbose mode").dest("very_verbose") .setDefault(false).action(Arguments.storeTrue()); ArgumentGroup proxyGroup = parser.addArgumentGroup("Proxy Options"); proxyGroup.description("Configuration related to Proxy, note that environment variables *_proxy " + "and *_PROXY are also interpreted"); proxyGroup.addArgument("--http-proxy").help("Set HTTP proxy to use, if any"); proxyGroup.addArgument("--https-proxy").help("Set HTTPS proxy to use, if any"); proxyGroup.addArgument("--ftp-proxy").help("Set FTP proxy to use, if any"); }
/** * Setup {@link ArgumentParser} * * @param subParsers * {@link Subparsers} to setup */ public static void setupParser(Subparsers subParsers) { BiFunction<String[], Namespace, GatherStatisticsCommand> handler = (argv, args) -> { try { return new GatherStatisticsCommand(argv, args); } catch (CommandLineParsingException e) { throw new UncheckedJannovarException("Could not parse command line", e); } }; Subparser subParser = subParsers.addParser("statistics", true).help("compute statistics about VCF file") .setDefault("cmd", handler); subParser.description("Compute statistics about variants in VCF file"); ArgumentGroup requiredGroup = subParser.addArgumentGroup("Required arguments"); requiredGroup.addArgument("-i", "--input-vcf").help("Path to input VCF file").required(true); requiredGroup.addArgument("-o", "--output-report").help("Path to output report TXT file").required(true); requiredGroup.addArgument("-d", "--database").help("Path to database .ser file").required(true); JannovarBaseOptions.setupParser(subParser); }
subParser.description("Project transcript-level changes to chromosome level ones"); ArgumentGroup requiredGroup = subParser.addArgumentGroup("Required arguments"); requiredGroup.addArgument("-r", "--reference-fasta").help("Path to reference FASTA file").required(true); requiredGroup.addArgument("-d", "--database").help("Path to database .ser file").required(true); requiredGroup.addArgument("-i", "--input-txt").help("Input file with HGVS transcript-level changes, line-by-line") .required(true); requiredGroup.addArgument("-o", "--output-vcf").help("Output VCF file with chromosome-level changes") .required(true); optionalGroup.addArgument("--show-all").help("Show all effects").setDefault(false); optionalGroup.addArgument("--no-3-prime-shifting").help("Disable shifting towards 3' of transcript") .dest("3_prime_shifting").setDefault(true).action(Arguments.storeFalse()); optionalGroup.addArgument("--3-letter-amino-acids").help("Enable usage of 3 letter amino acid codes") .setDefault(false).action(Arguments.storeTrue());
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("-i", "--input").help("CSV file").required(true); requiredGroup.addArgument("-c", "--chr").type(Integer.class).help("Column of chr (1 based)").required(true); requiredGroup.addArgument("-p", "--pos").type(Integer.class).help("Column of pos (1 based)").required(true); requiredGroup.addArgument("-r", "--ref").type(Integer.class).help("Column of ref (1 based)").required(true); requiredGroup.addArgument("-a", "--alt").type(Integer.class).help("Column of alt (1 based)").required(true); ArgumentGroup optionalGroup = subParser.addArgumentGroup("Additional CSV arguments (optional)"); optionalGroup.addArgument("-t", "--type").type(CSVFormat.Predefined.class) .choices(CSVFormat.Predefined.Default, CSVFormat.Predefined.TDF, CSVFormat.Predefined.RFC4180, CSVFormat.Predefined.Excel, CSVFormat.Predefined.MySQL) .help("Type of csv file. ").setDefault(CSVFormat.Predefined.Default); optionalGroup.addArgument("--header").help("Set if the file contains a header. ").setDefault(false) .action(Arguments.storeTrue());
/** * Setup {@link ArgumentParser} * * @param subParsers * {@link Subparsers} to setup */ public static void setupParser(Subparsers subParsers) { BiFunction<String[], Namespace, DownloadCommand> handler = (argv, args) -> { try { return new DownloadCommand(argv, args); } catch (CommandLineParsingException e) { throw new UncheckedJannovarException("Could not parse command line", e); } }; Subparser subParser = subParsers.addParser("download", true).help("download transcript databases") .setDefault("cmd", handler); subParser.description("Download transcript database"); ArgumentGroup requiredGroup = subParser.addArgumentGroup("Required arguments"); requiredGroup.addArgument("-d", "--database").help("Name of database to download, can be given multiple times") .setDefault(new ArrayList<String>()).action(Arguments.append()).required(true); ArgumentGroup optionalGroup = subParser.addArgumentGroup("Optional Arguments"); optionalGroup.addArgument("-s", "--data-source-list").help("INI file with data source list") .setDefault(new ArrayList<String>(Arrays.asList("bundle:///default_sources.ini"))).action(Arguments.append()); optionalGroup.addArgument("--download-dir").help("Path to download directory").setDefault("data"); JannovarBaseOptions.setupParser(subParser); }
static ArgumentParser getParser() { final ArgumentParser parser = ArgumentParsers.newArgumentParser("jar_file_name"); parser.description("Validation Tool for Yang Models") .formatUsage(); parser.addArgumentGroup("Required arguments") .addArgument("--yang-source-dir") .type(File.class) .required(true) .help("directory containing yang models which will be parsed") .dest("yang-source-dir") .metavar(""); return parser; }
/** * 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); }
tables.addArgument("--tables") .action(Arguments.storeTrue()) .dest("tables") .help("Check for added or removed tables (default)"); tables.addArgument("--ignore-tables") .action(Arguments.storeFalse()) .dest("tables") columns.addArgument("--columns") .action(Arguments.storeTrue()) .dest("columns") .help("Check for added, removed, or modified columns (default)"); columns.addArgument("--ignore-columns") .action(Arguments.storeFalse()) .dest("columns") views.addArgument("--views") .action(Arguments.storeTrue()) .dest("views") .help("Check for added, removed, or modified views (default)"); views.addArgument("--ignore-views") .action(Arguments.storeFalse()) .dest("views") primaryKeys.addArgument("--primary-keys") .action(Arguments.storeTrue()) .dest("primary-keys") .help("Check for changed primary keys (default)"); primaryKeys.addArgument("--ignore-primary-keys")
/** * Setup {@link ArgumentParser} * * @param subParsers * {@link Subparsers} to setup */ public static void setupParser(Subparsers subParsers) { BiFunction<String[], Namespace, DatabaseListCommand> handler = (argv, args) -> { try { return new DatabaseListCommand(argv, args); } catch (CommandLineParsingException e) { throw new UncheckedJannovarException("Could not parse command line", e); } }; Subparser subParser = subParsers.addParser("db-list", true).help("list databases available for download") .setDefault("cmd", handler); subParser.description("List databases available for download"); ArgumentGroup optionalGroup = subParser.addArgumentGroup("Optional Arguments"); optionalGroup.addArgument("-s", "--data-source-list").help("INI file with data source list") .setDefault(Lists.newArrayList("bundle:///default_sources.ini")).action(Arguments.append()); JannovarBaseOptions.setupParser(subParser); }
@Override public void configure(Subparser subparser) { super.configure(subparser); subparser.addArgument("id") .required(true) .help("IDs for the report (IDs can be reused to continue a partially completed report)"); subparser.addArgument("--placements") .dest("placements") .metavar("PLACEMENT") .nargs("+") .help("Limit report to the provided placements (by default all placements are included)"); ArgumentGroup continuation = subparser.addArgumentGroup("continue") .description("Continue report from a specific shard and table"); continuation.addArgument("--shard") .dest("shard") .type(Integer.class) .help("The shard ID to continue from (by default the report starts at the first shard)"); continuation.addArgument("--table") .dest("table") .help("The UUID of the table to continue from (by default the report starts at the " + "first table in the initial shard"); subparser.addArgument("--readOnly") .action(new StoreTrueArgumentAction()) .dest("readOnly") .help("Do not modify any data, such as fixing invalid compaction records"); }
connGroup.addArgument("-a", "--address") .help("address and port to connect to") .setDefault("bolt://localhost:7687"); connGroup.addArgument("-u", "--username") .setDefault("") .help("username to connect as. Can also be specified using environment variable NEO4J_USERNAME"); connGroup.addArgument("-p", "--password") .setDefault("") .help("password to connect with. Can also be specified using environment variable NEO4J_PASSWORD"); connGroup.addArgument("--encryption") .help("whether the connection to Neo4j should be encrypted; must be consistent with Neo4j's " + "configuration")
schemaGroup.description("Schemas generated by this script"); schemaGroup.addArgument("--emoSchema") .dest("emoSchema") .metavar("NAME") .help("Name of the schema where \"emodb\" located tables are generated"); schemaGroup.addArgument("--stashSchema") .dest("stashSchema") .metavar("NAME")