List of usage examples for org.apache.commons.cli OptionBuilder hasArgs
public static OptionBuilder hasArgs()
From source file:org.eclipse.emf.mwe.core.WorkflowRunner.java
@SuppressWarnings("static-access") protected static CommandLine getCommandLine(String[] args) throws ParseException { final Options options = new Options(); options.addOption(OptionBuilder.hasArgs().withArgName("className,moreArgs").withDescription( "the name of a class that implements ProgressMonitor. More arguments can be appended that will be injected to the monitor," + " if it has a init(String[] args) method.") .withLongOpt("monitorClass").withValueSeparator(',').create(MONITOR)); options.addOption(OptionBuilder.withLongOpt("ant").withDescription("must be set when using in Ant context") .create(ANT));// w ww .j a v a2 s. co m final Option paramOption = OptionBuilder.withArgName("key=value") .withDescription("external property that is handled as workflow property").hasArgs().create(PARAM); paramOption.setLongOpt("param"); options.addOption(paramOption); options.addOption(OptionBuilder.hasArgs().withArgName("className").withDescription( "the name of a class that implements a public method 'public void processCmdLine(String[] cmdLineArgs, Map paramsToUseInWorkflow, WorkflowContext ctx)'.") .withLongOpt("cmdLineProcessor").create(CMDL)); final Option runnerOption = OptionBuilder.withArgName("className") .withDescription("WorkflowRunnerEngine class").hasArgs().create(ENGINE); runnerOption.setLongOpt("engine"); options.addOption(runnerOption); // create the parser final CommandLineParser parser = new PosixParser(); CommandLine line = parser.parse(options, args); return line; }
From source file:org.eclipse.jubula.app.autrun.AutRunApplication.java
/** * @return the command line options available when invoking the main method. *//* ww w.j a v a2 s . c o m*/ private static Options createCmdLineOptions() { Options options = new Options(); Option autAgentHostOption = new Option(OPT_AUT_AGENT_HOST, true, NLS.bind(Messages.infoAutAgentHost, DEFAULT_AUT_AGENT_HOST)); autAgentHostOption.setLongOpt(OPT_AUT_AGENT_HOST_LONG); autAgentHostOption.setArgName(HOSTNAME); options.addOption(autAgentHostOption); Option autAgentPortOption = new Option(OPT_AUT_AGENT_PORT, true, NLS.bind(Messages.infoAutAgentPort, DEFAULT_AUT_AGENT_PORT)); autAgentPortOption.setLongOpt(OPT_AUT_AGENT_PORT_LONG); autAgentPortOption.setArgName(PORT); options.addOption(autAgentPortOption); OptionGroup autToolkitOptionGroup = new OptionGroup(); autToolkitOptionGroup.addOption(new Option(TK_SWING, Messages.infoSwingToolkit)); autToolkitOptionGroup.addOption(new Option(TK_SWT, Messages.infoSwtToolkit)); autToolkitOptionGroup.addOption(new Option(TK_RCP, Messages.infoRcpToolkit)); autToolkitOptionGroup.setRequired(true); options.addOptionGroup(autToolkitOptionGroup); Option autIdOption = new Option(OPT_AUT_ID, true, Messages.infoAutId); autIdOption.setLongOpt(OPT_AUT_ID_LONG); autIdOption.setArgName(ID); autIdOption.setRequired(true); options.addOption(autIdOption); Option nameTechnicalComponentsOption = new Option(OPT_NAME_TECHNICAL_COMPONENTS, true, Messages.infoGenerateTechnicalComponentNames); nameTechnicalComponentsOption.setLongOpt(OPT_NAME_TECHNICAL_COMPONENTS_LONG); nameTechnicalComponentsOption.setArgName(TRUE_FALSE); options.addOption(nameTechnicalComponentsOption); Option keyboardLayoutOption = new Option(OPT_KEYBOARD_LAYOUT, true, Messages.infoKbLayout); keyboardLayoutOption.setLongOpt(OPT_KEYBOARD_LAYOUT_LONG); keyboardLayoutOption.setArgName(LOCALE); options.addOption(keyboardLayoutOption); Option workingDirOption = new Option(OPT_WORKING_DIR, true, Messages.infoAutWorkingDirectory); workingDirOption.setLongOpt(OPT_WORKING_DIR_LONG); workingDirOption.setArgName(DIRECTORY); options.addOption(workingDirOption); Option helpOption = new Option(OPT_HELP, false, Messages.infoHelp); helpOption.setLongOpt(OPT_HELP_LONG); options.addOption(helpOption); OptionBuilder.hasArgs(); Option autExecutableFileOption = OptionBuilder.create(OPT_EXECUTABLE); autExecutableFileOption.setDescription(Messages.infoExecutableFile); autExecutableFileOption.setLongOpt(OPT_EXECUTABLE_LONG); autExecutableFileOption.setRequired(true); autExecutableFileOption.setArgName(COMMAND); options.addOption(autExecutableFileOption); return options; }
From source file:org.glite.authz.pap.ui.cli.policymanagement.ListPolicies.java
@SuppressWarnings("static-access") @Override/*from w w w . ja v a 2 s . c om*/ protected Options defineCommandOptions() { Options options = new Options(); options.addOption(OptionBuilder.hasArg(false).withDescription(OPT_SHOW_XACML_DESCRIPTION) .withLongOpt(OPT_SHOW_XACML_LONG).create()); options.addOption(OptionBuilder.hasArg(false).withDescription(OPT_SHOW_RA_IDS_DESCRIPTION) .withLongOpt(OPT_SHOW_IDS_LONG).create(OPT_SHOW_RA_IDS)); options.addOption(OptionBuilder.hasArg(false).withDescription(OPT_SHOW_ALL_IDS_DESCRIPTION) .withLongOpt(OPT_SHOW_ALL_IDS_LONG).create(OPT_SHOW_ALL_IDS)); options.addOption(OptionBuilder.hasArg(false).withDescription(OPT_ALLPAPS_DESCRIPTION) .withLongOpt(OPT_ALL_LONG).create()); options.addOption(OptionBuilder.hasArgs().withDescription(OPT_PAPALIAS_DESCRIPTION) .withLongOpt(OPT_PAPALIAS_LONG).create()); options.addOption(OptionBuilder.hasArg(true).withDescription(OPT_ACTION_LONG_DESCRIPTION) .withLongOpt(OPT_ACTION_LONG).create()); options.addOption(OptionBuilder.hasArg(true).withDescription(OPT_RESOURCE_LONG_DESCRIPTION) .withLongOpt(OPT_RESOURCE_LONG).create()); return options; }
From source file:org.openmainframe.ade.main.Train.java
@Override protected void parseArgs(String[] args) throws AdeException { final Option helpOpt = new Option("h", "help", false, "Print help message and exit"); OptionBuilder.withLongOpt(ALL_OPT);//from w w w . j av a 2s. c om OptionBuilder.isRequired(false); OptionBuilder.withDescription("All analysis groups"); final Option allAnalysisGroupsOpt = OptionBuilder.create('a'); OptionBuilder.withLongOpt(GROUPS_OPT); OptionBuilder.withArgName("ANALYSIs GROUPS"); OptionBuilder.hasArgs(); OptionBuilder.isRequired(false); OptionBuilder.withDescription("Selected analysis groups"); final Option selectAnalysisGroupsOpt = OptionBuilder.create('s'); final OptionGroup inputAnalysisGroupsOptGroup = new OptionGroup().addOption(allAnalysisGroupsOpt) .addOption(selectAnalysisGroupsOpt); inputAnalysisGroupsOptGroup.setRequired(true); OptionBuilder.withLongOpt(UNSELECT_OPT); OptionBuilder.withArgName("ANALYSIS GROUPS"); OptionBuilder.hasArgs(); OptionBuilder.isRequired(false); OptionBuilder.withDescription("Unselect analysis groups. Used only with '" + ALL_OPT + "'"); final Option unselectAnalysisGroupsOpt = OptionBuilder.create('u'); OptionBuilder.withLongOpt(DURATION_OPT); OptionBuilder.withArgName("DURATION (ISO 8601)"); OptionBuilder.isRequired(false); OptionBuilder.hasArg(); OptionBuilder.withDescription( "Duration from/to start/end date. Defaults to infinity. Replaces either 'start-date' or 'end-date'"); final Option periodOpt = OptionBuilder.create(); OptionBuilder.withLongOpt(NUM_DAYS_OPT); OptionBuilder.withArgName("INT"); OptionBuilder.hasArg(); OptionBuilder.isRequired(false); OptionBuilder.withDescription("Number of days. same as '" + DURATION_OPT + "'"); final Option numDaysOpt = OptionBuilder.create('n'); final OptionGroup periodOptGroup = new OptionGroup().addOption(periodOpt).addOption(numDaysOpt); OptionBuilder.withLongOpt(START_DATE_OPT); OptionBuilder.withArgName("MM/dd/yyyy[ HH:mm][ Z]"); OptionBuilder.hasArg(); OptionBuilder.isRequired(false); OptionBuilder.withDescription( "Start of date range. Optional. Replaces 'duration'/'num-days' when used along with 'end-date'"); final Option startDateOpt = OptionBuilder.create(); OptionBuilder.withLongOpt(END_DATE_OPT); OptionBuilder.withArgName("MM/dd/yyyy[ HH:mm][ Z]"); OptionBuilder.hasArg(); OptionBuilder.isRequired(false); OptionBuilder .withDescription("End of date range. Defaults to this moment. Replaces 'duration'/'num-days' when" + " used along with 'start-date'"); final Option endDateOpt = OptionBuilder.create(); final Options options = new Options(); options.addOption(helpOpt); options.addOptionGroup(inputAnalysisGroupsOptGroup); options.addOption(unselectAnalysisGroupsOpt); options.addOptionGroup(periodOptGroup); options.addOption(endDateOpt); options.addOption(startDateOpt); final CommandLineParser parser = new GnuParser(); CommandLine line; try { // parse the command line arguments line = parser.parse(options, args); } catch (MissingOptionException exp) { new HelpFormatter().printHelp(HELP + "\nOptions:", options); throw new AdeUsageException("Command line parsing failed", exp); } catch (ParseException exp) { // oops, something went wrong throw new AdeUsageException("Argument Parsing failed", exp); } if (line.hasOption(helpOpt.getLongOpt())) { new HelpFormatter().printHelp(HELP, options); closeAll(); System.exit(0); } if (line.hasOption(UNSELECT_OPT) && !line.hasOption(ALL_OPT)) { throw new AdeUsageException("'" + UNSELECT_OPT + "' cannot be used without '" + ALL_OPT + "'"); } final Set<Integer> allAnalysisGroups = Ade.getAde().getDataStore().sources().getAllAnalysisGroups(); if (line.hasOption(ALL_OPT)) { System.out.println("Operating on all available analysis groups"); if (!line.hasOption(UNSELECT_OPT)) { m_analysisGroups = allAnalysisGroups; } else { final Set<Integer> unselectedAnalysisGroups = parseAnalysisGroups(allAnalysisGroups, line.getOptionValues(UNSELECT_OPT)); final Set<String> unselectedGroupNames = getGroupNames(unselectedAnalysisGroups); System.out.println("Omitting analysis groups: " + unselectedGroupNames.toString()); m_analysisGroups = new TreeSet<Integer>(allAnalysisGroups); m_analysisGroups.removeAll(unselectedAnalysisGroups); } } else if (line.hasOption(GROUPS_OPT)) { m_analysisGroups = parseAnalysisGroups(allAnalysisGroups, line.getOptionValues(GROUPS_OPT)); final Set<String> operatingAnalysisGroups = getGroupNames(m_analysisGroups); System.out.println("Operating on analysis groups: " + operatingAnalysisGroups.toString()); } if ((line.hasOption(NUM_DAYS_OPT) || line.hasOption(DURATION_OPT)) && line.hasOption(START_DATE_OPT) && line.hasOption(END_DATE_OPT)) { throw new AdeUsageException("Cannot use '" + DURATION_OPT + "'/'" + NUM_DAYS_OPT + "', '" + START_DATE_OPT + "' and '" + END_DATE_OPT + "' together"); } if (line.hasOption(NUM_DAYS_OPT)) { final String numDaysStr = line.getOptionValue(NUM_DAYS_OPT); final int numDays = Integer.parseInt(numDaysStr); this.m_period = Period.days(numDays); } if (line.hasOption(DURATION_OPT)) { final String periodStr = line.getOptionValue(DURATION_OPT); this.m_period = ISOPeriodFormat.standard().parsePeriod(periodStr); } if (line.hasOption(START_DATE_OPT)) { m_startDate = parseDate(line.getOptionValue(START_DATE_OPT)); } if (line.hasOption(END_DATE_OPT)) { m_endDate = parseDate(line.getOptionValue(END_DATE_OPT)); } }
From source file:org.sikuli.script.CommandArgs.java
private void init() { _options = new Options(); _options.addOption("h", "help", false, "print this help message"); if (isIDE(_callerType)) { _options.addOption("s", "stderr", false, "print runtime errors to stderr instead of popping up a message box"); _options.addOption(OptionBuilder.withLongOpt("load").withDescription("peload scripts in IDE") .hasOptionalArgs().withArgName("one or more foobar.sikuli").create('l')); }/*from w w w.j a va2 s . co m*/ if (isScript(_callerType)) { _options.addOption("i", "interactive", false, "start interactive Sikuli Jython session\n(Sikuli, sys, time already imported)"); _options.addOption( OptionBuilder.withLongOpt("test").withDescription("run script using Jython's unittest").hasArg() .withArgName("foobar.sikuli").create('t')); _options.addOption(OptionBuilder.withLongOpt("run").withDescription("run script").hasArg() .withArgName("foobar.sikuli").create('r')); } _options.addOption(OptionBuilder.hasArgs().withLongOpt("args").withArgName("arguments") .withDescription("arguments passed to Jython's sys.argv").create()); }
From source file:org.vivoweb.harvester.util.args.ArgParser.java
/** * Create the Options from this ArgParser *///from w w w .ja v a 2s . c o m @SuppressWarnings("static-access") private void createOptions() { this.parser = new Options(); for (ArgDef arg : getArgDefs()) { OptionBuilder ob = OptionBuilder.isRequired(false); if (arg.getLongOption() != null) { ob = ob.withLongOpt(arg.getLongOption()); this.optMap.put(arg.getLongOption(), arg); } if (arg.getDescription() != null) { ob = ob.withDescription(arg.getDescription()); } if (arg.hasParameter()) { ob = ob.withArgName(arg.getParameterDescription()); int num = arg.numParameters(); if (num == 1) { ob = ob.hasArg(arg.isParameterRequired()); } else if (num == -1) { if (arg.isParameterRequired()) { ob = ob.hasArgs(); } else { if (arg.isParameterValueMap()) { ob = ob.hasOptionalArgs(2).withValueSeparator(); } else { ob = ob.hasOptionalArgs(); } } } else { if (arg.isParameterRequired()) { ob = ob.hasArgs(num); } else { ob = ob.hasOptionalArgs(num); } } } Option o; if (arg.getShortOption() != null) { o = ob.create(arg.getShortOption().charValue()); this.optMap.put(arg.getShortOption().toString(), arg); } else { o = ob.create(); } this.parser.addOption(o); } }
From source file:org.wikidata.wdtk.client.ClientConfiguration.java
/** * Builds a list of legal options and store them into the options objects. *//*w w w. ja va 2 s .c o m*/ @SuppressWarnings("static-access") private static void initOptions() { List<String> actions = new ArrayList<>(KNOWN_ACTIONS.keySet()); Collections.sort(actions); Option action = OptionBuilder.hasArg().withArgName("action") .withDescription("define the action that should be performed; avaible actions: " + actions) .withLongOpt(OPTION_ACTION).create(CMD_OPTION_ACTION); Option destination = OptionBuilder.withArgName("path").hasArg() .withDescription("place the output into the file at <path>").withLongOpt(OPTION_OUTPUT_DESTINATION) .create(CMD_OPTION_OUTPUT_DESTINATION); Option dumplocation = OptionBuilder.hasArg().withArgName("path") .withDescription("set the location of the dump files").withLongOpt(OPTION_DUMP_LOCATION) .create(CMD_OPTION_DUMP_LOCATION); Option config = OptionBuilder.hasArg().withArgName("file") .withDescription("set a config file; use this to define multiple actions for a single run") .withLongOpt(OPTION_CONFIG_FILE).create(CMD_OPTION_CONFIG_FILE); Option rdfdump = OptionBuilder.hasArgs().withArgName("task").withDescription( "specify which data to include in RDF dump (use with action \"rdf\"); run with options \"-a rdf -n\" for help") .withLongOpt(OPTION_OUTPUT_RDF_TYPE).create(); Option filterLanguages = OptionBuilder.hasArgs().withArgName("languages").withDescription( "specifies a list of language codes; if given, only terms in languages in this list will be processed; the value \"-\" denotes the empty list (no terms are processed)") .withLongOpt(OPTION_FILTER_LANGUAGES).create(); Option filterSites = OptionBuilder.hasArgs().withArgName("sites").withDescription( "specifies a list of site keys; if given, only site links to sites in this list will be processed; the value \"-\" denotes the empty list (no site links are processed)") .withLongOpt(OPTION_FILTER_SITES).create(); Option filterProperties = OptionBuilder.hasArgs().withArgName("ids").withDescription( "specifies a list of property ids; if given, only statements for properties in this list will be processed; the value \"-\" denotes the empty list (no statements are processed)") .withLongOpt(OPTION_FILTER_PROPERTIES).create(); Option compressionExtention = OptionBuilder.hasArg().withArgName("type") .withDescription("define a compression format to be used for the output; possible values: " + DumpProcessingOutputAction.COMPRESS_GZIP + ", " + DumpProcessingOutputAction.COMPRESS_BZ2) .withLongOpt(OPTION_OUTPUT_COMPRESSION).create(CMD_OPTION_OUTPUT_COMPRESSION); Option report = OptionBuilder.hasArg().withArgName("path") .withDescription("specifies a path to print a final report after dump generations.") .withLongOpt(OPTION_CREATE_REPORT).create(CMD_OPTION_CREATE_REPORT); options.addOption(config); options.addOption(action); options.addOption(CMD_OPTION_QUIET, OPTION_QUIET, false, "perform all actions quietly, without printing status messages to the console; errors/warnings are still printed to stderr"); options.addOption(destination); options.addOption(dumplocation); options.addOption(filterLanguages); options.addOption(filterSites); options.addOption(filterProperties); options.addOption(compressionExtention); options.addOption(report); options.addOption(rdfdump); options.addOption(CMD_OPTION_OFFLINE_MODE, OPTION_OFFLINE_MODE, false, "execute all operations in offline mode, using only previously downloaded dumps"); options.addOption(CMD_OPTION_HELP, OPTION_HELP, false, "print this message"); options.addOption(CMD_OPTION_OUTPUT_STDOUT, OPTION_OUTPUT_STDOUT, false, "write output to stdout"); }
From source file:pl.nask.hsn2.unicorn.CommandLineParams.java
private void initOptions() { OptionGroup optionGroup = new OptionGroup(); optionGroup.setRequired(true);//from ww w . j a v a2 s . c o m OptionBuilder.withArgName(JOB_ID); OptionBuilder.withLongOpt("jobCancel"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Job cancel"); optionGroup.addOption(OptionBuilder.create("jc")); OptionBuilder.withArgName("workflowName [serviceParams]"); OptionBuilder.withLongOpt("jobDescriptor"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("Job descriptor"); optionGroup.addOption(OptionBuilder.create("jd")); OptionBuilder.withArgName("workflowName filePath"); OptionBuilder.withLongOpt("jobDescriptorFlood"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("Job descriptor flood"); optionGroup.addOption(OptionBuilder.create("jdf")); OptionBuilder.withLongOpt("jobList"); OptionBuilder.withDescription("Job list"); optionGroup.addOption(OptionBuilder.create("jl")); OptionBuilder.withLongOpt("jobListQuery"); OptionBuilder.withArgName("workflowName"); OptionBuilder.hasArg(); OptionBuilder.withDescription("List of jobs with the given workflow name"); optionGroup.addOption(OptionBuilder.create("jlq")); OptionBuilder.withArgName(JOB_ID); OptionBuilder.withLongOpt("jobInfo"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Job info"); optionGroup.addOption(OptionBuilder.create("ji")); OptionBuilder.withLongOpt("listWorkflow"); OptionBuilder.withDescription("Workflow list"); optionGroup.addOption(OptionBuilder.create("lw")); OptionBuilder.withArgName("workflowName revision"); OptionBuilder.withLongOpt("getWorkflow"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("get Workflow"); optionGroup.addOption(OptionBuilder.create("gw")); OptionBuilder.withArgName("workflowFilePath"); OptionBuilder.withLongOpt("uploadWorkflow"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Uploads worklfow definition file"); optionGroup.addOption(OptionBuilder.create("uw")); OptionBuilder.withLongOpt("getConfig"); OptionBuilder.withDescription("get config"); optionGroup.addOption(OptionBuilder.create("gcr")); OptionBuilder.withArgName("queueName"); OptionBuilder.withLongOpt("getMessage"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Print message from queue without consuming"); optionGroup.addOption(OptionBuilder.create("gm")); OptionBuilder.withArgName("queueName messagesNumber"); OptionBuilder.withLongOpt("getMessages"); OptionBuilder.hasArgs(2); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("Print messages from queue without consuming"); optionGroup.addOption(OptionBuilder.create("gms")); OptionBuilder.withArgName("queueName"); OptionBuilder.withLongOpt("streamMessage"); OptionBuilder.hasArgs(1); OptionBuilder.withDescription("Get and print all messages from queue. Listens in infinite loop."); optionGroup.addOption(OptionBuilder.create("sm")); OptionBuilder.withArgName("jobId objectId"); OptionBuilder.withLongOpt("objectStoreGet"); OptionBuilder.hasArgs(2); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("return object having the same jobId and objectId"); optionGroup.addOption(OptionBuilder.create("osg")); OptionBuilder.withArgName(JOB_ID); OptionBuilder.hasArg(); OptionBuilder.withDescription("Make dump"); optionGroup.addOption(OptionBuilder.create("dump")); OptionBuilder.withArgName(JOB_ID); OptionBuilder.withLongOpt("objectStoreQueryAll"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Query for objectStore return ALL objects with jobId"); optionGroup.addOption(OptionBuilder.create("osqa")); OptionBuilder.withArgName("jobId name"); OptionBuilder.withLongOpt("objectStoreQueryName"); OptionBuilder.hasArgs(2); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription( "Query for objectStore return objects having the same jobId and attribute name as given"); optionGroup.addOption(OptionBuilder.create("osqn")); OptionBuilder.withArgName("jobId name type[s/i/b/o] value"); OptionBuilder.withLongOpt("objectStoreQueryValue"); OptionBuilder.hasArgs(4); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription( "Query for objectStore return objects having the same jobId attribute named and value as given."); optionGroup.addOption(OptionBuilder.create("osqv")); OptionBuilder.withArgName(JOB_ID); OptionBuilder.withLongOpt("objectStoreJobClean"); OptionBuilder.hasArg(); OptionBuilder.withDescription( "Sends JobFinished message. As a result of this msg ObjectStore will clean all data with given jobId."); optionGroup.addOption(OptionBuilder.create("osjc")); OptionBuilder.withLongOpt("help"); OptionBuilder.withDescription("Prints this help"); optionGroup.addOption(OptionBuilder.create("h")); OptionBuilder.withArgName("fileName jobId"); OptionBuilder.hasArgs(2); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription("Import objects from file to os"); optionGroup.addOption(OptionBuilder.create("import")); OptionBuilder.withArgName(JOB_ID); OptionBuilder.hasArg(); OptionBuilder.withDescription("checking status of job"); optionGroup.addOption(OptionBuilder.create("status")); OptionBuilder.withArgName("action[id|w] param count [interval]"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withDescription( "When action type is 'id' it monitors job and starts new if it ends. When type is 'w' it starts new job, monitors it and starts new if it ends. Count defines how many time to repeat job. Time interval defines sleep between checks in seconds (10s if nothing provided)."); OptionBuilder.withLongOpt("jobDescriptorLooped"); optionGroup.addOption(OptionBuilder.create("jdl")); options.addOptionGroup(optionGroup); OptionBuilder.withArgName("address"); OptionBuilder.withLongOpt("serverAddress"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Address for server, default: " + address); options.addOption(OptionBuilder.create("sa")); OptionBuilder.withArgName("name"); OptionBuilder.withLongOpt("queueName"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Name for objestStore queue, default: " + osQueueName); options.addOption(OptionBuilder.create("qn")); OptionBuilder.withArgName("name"); OptionBuilder.withLongOpt("fwQueueName"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Name for framework queue, default: " + frameworkQueueName); options.addOption(OptionBuilder.create("fqn")); OptionBuilder.withLongOpt("verbose"); OptionBuilder.withDescription("Whether to print objects in osqa, osqn and osqv, default: not enabled."); options.addOption(OptionBuilder.create("verb")); OptionBuilder.withLongOpt("brief"); OptionBuilder.withDescription("Used with '-jl' and '-osqa' only. Shows brief info. Default: not enabled."); options.addOption(OptionBuilder.create("b")); }
From source file:projetg2.DcmSnd.java
private static CommandLine parse(String[] args) { Options opts = new Options(); OptionBuilder.withArgName("name"); OptionBuilder.hasArg();/*from w ww .j av a 2s .c o m*/ OptionBuilder.withDescription("set device name, use DCMSND by default"); opts.addOption(OptionBuilder.create("device")); OptionBuilder.withArgName("aet[@host][:port]"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set AET, local address and listening port of local " + "Application Entity, use device name and pick up any valid " + "local address to bind the socket by default"); opts.addOption(OptionBuilder.create("L")); opts.addOption("ts1", false, "offer Default Transfer Syntax in " + "separate Presentation Context. By default offered with " + "Explicit VR Little Endian TS in one PC."); opts.addOption("fileref", false, "send objects without pixel data, but with a reference to " + "the DICOM file using DCM4CHE URI Referenced Transfer Syntax " + "to import DICOM objects on a given file system to a DCM4CHEE " + "archive."); OptionBuilder.withArgName("username"); OptionBuilder.hasArg(); OptionBuilder.withDescription( "enable User Identity Negotiation with specified username and " + " optional passcode"); opts.addOption(OptionBuilder.create("username")); OptionBuilder.withArgName("passcode"); OptionBuilder.hasArg(); OptionBuilder.withDescription( "optional passcode for User Identity Negotiation, " + "only effective with option -username"); opts.addOption(OptionBuilder.create("passcode")); opts.addOption("uidnegrsp", false, "request positive User Identity Negotation response, " + "only effective with option -username"); OptionBuilder.withArgName("NULL|3DES|AES"); OptionBuilder.hasArg(); OptionBuilder.withDescription("enable TLS connection without, 3DES or AES encryption"); opts.addOption(OptionBuilder.create("tls")); OptionGroup tlsProtocol = new OptionGroup(); tlsProtocol.addOption(new Option("tls1", "disable the use of SSLv3 and SSLv2 for TLS connections")); tlsProtocol.addOption(new Option("ssl3", "disable the use of TLSv1 and SSLv2 for TLS connections")); tlsProtocol.addOption(new Option("no_tls1", "disable the use of TLSv1 for TLS connections")); tlsProtocol.addOption(new Option("no_ssl3", "disable the use of SSLv3 for TLS connections")); tlsProtocol.addOption(new Option("no_ssl2", "disable the use of SSLv2 for TLS connections")); opts.addOptionGroup(tlsProtocol); opts.addOption("noclientauth", false, "disable client authentification for TLS"); OptionBuilder.withArgName("file|url"); OptionBuilder.hasArg(); OptionBuilder .withDescription("file path or URL of P12 or JKS keystore, resource:tls/test_sys_2.p12 by default"); opts.addOption(OptionBuilder.create("keystore")); OptionBuilder.withArgName("password"); OptionBuilder.hasArg(); OptionBuilder.withDescription("password for keystore file, 'secret' by default"); opts.addOption(OptionBuilder.create("keystorepw")); OptionBuilder.withArgName("password"); OptionBuilder.hasArg(); OptionBuilder .withDescription("password for accessing the key in the keystore, keystore password by default"); opts.addOption(OptionBuilder.create("keypw")); OptionBuilder.withArgName("file|url"); OptionBuilder.hasArg(); OptionBuilder.withDescription("file path or URL of JKS truststore, resource:tls/mesa_certs.jks by default"); opts.addOption(OptionBuilder.create("truststore")); OptionBuilder.withArgName("password"); OptionBuilder.hasArg(); OptionBuilder.withDescription("password for truststore file, 'secret' by default"); opts.addOption(OptionBuilder.create("truststorepw")); OptionBuilder.withArgName("aet@host:port"); OptionBuilder.hasArg(); OptionBuilder.withDescription("request storage commitment of (successfully) sent objects " + "afterwards in new association to specified remote " + "Application Entity"); opts.addOption(OptionBuilder.create("stgcmtae")); opts.addOption("stgcmt", false, "request storage commitment of (successfully) sent objects " + "afterwards in same association"); OptionBuilder.withArgName("attr=value"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator('='); OptionBuilder.withDescription("Replace value of specified attribute " + "with specified value in transmitted objects. attr can be " + "specified by name or tag value (in hex), e.g. PatientName " + "or 00100010."); opts.addOption(OptionBuilder.create("set")); OptionBuilder.withArgName("sx1[:sx2[:sx3]"); OptionBuilder.hasArgs(); OptionBuilder.withValueSeparator(':'); OptionBuilder.withDescription( "Suffix SOP [,Series [,Study]] " + "Instance UID with specified value[s] in transmitted objects."); opts.addOption(OptionBuilder.create("setuid")); OptionBuilder.withArgName("maxops"); OptionBuilder.hasArg(); OptionBuilder.withDescription("maximum number of outstanding operations it may invoke " + "asynchronously, unlimited by default."); opts.addOption(OptionBuilder.create("async")); opts.addOption("pdv1", false, "send only one PDV in one P-Data-TF PDU, " + "pack command and data PDV in one P-DATA-TF PDU by default."); opts.addOption("tcpdelay", false, "set TCP_NODELAY socket option to false, true by default"); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("timeout in ms for TCP connect, no timeout by default"); opts.addOption(OptionBuilder.create("connectTO")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("delay in ms for Socket close after sending A-ABORT, " + "50ms by default"); opts.addOption(OptionBuilder.create("soclosedelay")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("delay in ms for closing the listening socket, " + "1000ms by default"); opts.addOption(OptionBuilder.create("shutdowndelay")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("period in ms to check for outstanding DIMSE-RSP, " + "10s by default"); opts.addOption(OptionBuilder.create("reaper")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("timeout in ms for receiving DIMSE-RSP, 10s by default"); opts.addOption(OptionBuilder.create("rspTO")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("timeout in ms for receiving A-ASSOCIATE-AC, 5s by default"); opts.addOption(OptionBuilder.create("acceptTO")); OptionBuilder.withArgName("ms"); OptionBuilder.hasArg(); OptionBuilder.withDescription("timeout in ms for receiving A-RELEASE-RP, 5s by default"); opts.addOption(OptionBuilder.create("releaseTO")); OptionBuilder.withArgName("KB"); OptionBuilder.hasArg(); OptionBuilder.withDescription("maximal length in KB of received P-DATA-TF PDUs, 16KB by default"); opts.addOption(OptionBuilder.create("rcvpdulen")); OptionBuilder.withArgName("KB"); OptionBuilder.hasArg(); OptionBuilder.withDescription("maximal length in KB of sent P-DATA-TF PDUs, 16KB by default"); opts.addOption(OptionBuilder.create("sndpdulen")); OptionBuilder.withArgName("KB"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set SO_RCVBUF socket option to specified value in KB"); opts.addOption(OptionBuilder.create("sorcvbuf")); OptionBuilder.withArgName("KB"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set SO_SNDBUF socket option to specified value in KB"); opts.addOption(OptionBuilder.create("sosndbuf")); OptionBuilder.withArgName("KB"); OptionBuilder.hasArg(); OptionBuilder.withDescription("transcoder buffer size in KB, 1KB by default"); opts.addOption(OptionBuilder.create("bufsize")); OptionBuilder.withArgName("count"); OptionBuilder.hasArg(); OptionBuilder.withDescription("Batch size - Number of files to be sent in each batch, " + "where a storage commit is done between batches "); opts.addOption(OptionBuilder.create("batchsize")); opts.addOption("lowprior", false, "LOW priority of the C-STORE operation, MEDIUM by default"); opts.addOption("highprior", false, "HIGH priority of the C-STORE operation, MEDIUM by default"); opts.addOption("h", "help", false, "print this message"); opts.addOption("V", "version", false, "print the version information and exit"); CommandLine cl = null; try { cl = new GnuParser().parse(opts, args); } catch (ParseException e) { exit("dcmsnd: " + e.getMessage()); throw new RuntimeException("unreachable"); } if (cl.hasOption('V')) { Package p = DcmSnd.class.getPackage(); System.out.println("dcmsnd v" + p.getImplementationVersion()); System.exit(0); } if (cl.hasOption('h') || cl.getArgList().size() < 2) { HelpFormatter formatter = new HelpFormatter(); formatter.printHelp(USAGE, DESCRIPTION, opts, EXAMPLE); System.exit(0); } return cl; }
From source file:sos.scheduler.cron.CronConverter.java
/** * @param args//from w w w . j av a 2 s. c o m */ public static void main(final String[] args) { Logger logger = Logger.getLogger(CronConverter.class); @SuppressWarnings("unused") Log4JHelper objLogger = null; objLogger = new Log4JHelper(null); logger = Logger.getRootLogger(); logger.info("SOS CronConverter - Main"); //$NON-NLS-1$ /*try { test(); } catch(Exception ex){ ex.printStackTrace(); } */ try { //SOSArguments arguments = new SOSArguments(args); SOSLogger sosLogger; String sourceFile = ""; String targetFile = ""; String changeUser = ""; File source = null; File target = null; int logLevel = 0; boolean sysTab = false; boolean useOldRunTime = false; String jobTimeout = ""; /* try { sourceFile = arguments.as_string("-crontab="); if (sourceFile.equalsIgnoreCase("/etc/crontab")) sysTab = true; targetFile = arguments.as_string("-target="); logLevel = arguments.as_int("-v=",SOSStandardLogger.INFO); sysTab = arguments.as_bool("-system=",sysTab); useOldRunTime = arguments.as_bool("-oldRunTime=",false); changeUser = arguments.as_string("-change-user=", "su"); } catch (Exception e1) { System.out.println(e1.getMessage()); showUsage(); System.exit(0); }*/ Options options = new Options(); OptionBuilder.withArgName("0|1"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set to 1 if source is the system crontab (with user field)"); Option optSysTab = OptionBuilder.create(conOptionsSYSTAB); OptionBuilder.withArgName("file"); OptionBuilder.hasArgs(); OptionBuilder.isRequired(); OptionBuilder.withDescription("crontab file"); Option optSourceFile = OptionBuilder.create(conOptionCRONTAB); OptionBuilder.withArgName("file"); OptionBuilder.hasArgs(); OptionBuilder.isRequired(); OptionBuilder.withDescription("xml configuration file"); Option optTargetFile = OptionBuilder.create(conOptionTARGET); OptionBuilder.withArgName("level"); OptionBuilder.hasArg(); OptionBuilder.withType(new Integer(0)); OptionBuilder.withDescription("loglevel [0=info] [1=debug1]...[9=debug]"); Option optLogLevel = OptionBuilder.create(conOptionVERBOSE); OptionBuilder.withArgName("command"); OptionBuilder.hasArgs(); OptionBuilder.withDescription( "change user command for -systab=1. 'su' or 'sudo' or define your own command using $SCHEDULER_CRONTAB_USER."); Option optChangeUser = OptionBuilder.create(conOptionCHANGEUSER); OptionBuilder.withArgName("seconds"); OptionBuilder.hasArg(); OptionBuilder.withDescription("job timeout (0 for unlimited"); @SuppressWarnings("unused") Option optTimeOut = OptionBuilder.create(conOptionTIMEOUT); @SuppressWarnings("unused") Option optOldRunTime = new Option("oldRunTime", ""); OptionBuilder.withArgName("true|false"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set to true if script has to be mok'ed"); Option optCreateMok = OptionBuilder.create(conOptionCREATE_MOCK); OptionBuilder.withArgName("true|false"); OptionBuilder.hasArg(); OptionBuilder.withDescription("set to true if you want to create jobChains and jobs"); Option optCreateJobChains = OptionBuilder.create(conOptionCREATE_JobChains); options.addOption(optSysTab); options.addOption(optSourceFile); options.addOption(optTargetFile); options.addOption(optLogLevel); options.addOption(optChangeUser); options.addOption(optCreateMok); options.addOption(optCreateJobChains); CommandLineParser parser = new GnuParser(); CommandLine line = null; try { line = parser.parse(options, args); } catch (Exception e) { HelpFormatter formatter = new HelpFormatter(); formatter.printHelp("cronconverter", options, true); System.exit(0); } sourceFile = getWholeArgument(line.getOptionValues(conOptionCRONTAB)); if (sourceFile.equalsIgnoreCase(conSystemCrontabName)) sysTab = true; targetFile = getWholeArgument(line.getOptionValues(conOptionTARGET)); String ll = line.getOptionValue(conOptionVERBOSE, "" + SOSStandardLogger.INFO); logLevel = Integer.parseInt(ll); if (line.hasOption(optSysTab.getOpt())) { sysTab = line.getOptionValue(optSysTab.getOpt()).trim().equals("1"); } useOldRunTime = line.hasOption("oldRunTime"); changeUser = ""; if (line.hasOption(conOptionCHANGEUSER)) { changeUser = getWholeArgument(line.getOptionValues(conOptionCHANGEUSER)); } jobTimeout = line.getOptionValue(conOptionTIMEOUT); if (logLevel == 0) logLevel = SOSLogger.INFO; sosLogger = new SOSStandardLogger(logLevel); target = new File(targetFile); source = new File(sourceFile); CronConverter cc = new CronConverter(sosLogger); if (jobTimeout != null && jobTimeout.length() > 0) { cc.setTimeout(jobTimeout); } cc.setChangeUserCommand(changeUser); if (line.hasOption(conOptionCREATE_MOCK)) { // JITL-28 cc.setCreateAMock(line.getOptionValue(conOptionCREATE_MOCK).equalsIgnoreCase(conTRUE)); } if (line.hasOption(conOptionCREATE_JobChains)) { // JITL-28 cc.setCreateJobChainJobs(line.getOptionValue(conOptionCREATE_JobChains).equalsIgnoreCase(conTRUE)); } cc.setSystemCronTab(sysTab); cc.oldRunTime = useOldRunTime; cc.cronFile2SchedulerXMLFile(source, target); } catch (Exception e) { e.printStackTrace(); } }