List of usage examples for org.apache.commons.cli OptionBuilder hasOptionalArgs
public static OptionBuilder hasOptionalArgs()
From source file:com.aguin.stock.recommender.UserOptions.java
public static void main(String[] args) { options = new Options(); Option optU = OptionBuilder.hasArg().withArgName("uid").isRequired(true).withType(String.class) .withDescription(/* w w w . j a v a 2 s .c o m*/ "User ID : must be a valid email address which serves as the unique identity of the portfolio") .create("u"); Option optI = OptionBuilder.hasOptionalArgs().withArgName("item").withType(String.class).isRequired(false) .withDescription( "Stock(s) in your portfolio: Print all stocks selected by this option and preferences against them") .create("i"); Option optP = OptionBuilder.hasOptionalArgs().withArgName("pref").isRequired(false).withType(Long.class) .withDescription( "Preference(s) against stocks in portfolio : Print all preferences specified in option and all stocks listed against that preference. Multiple preferences may be specified to draw on the many-many relationship between stocks and preferences matrices") .create("p"); Option optIP = OptionBuilder.hasArg().withArgName("itempref").withValueSeparator(':').isRequired(false) .withDescription( "Enter stock and preferences over command line. Any new stock will be registered as a new entry along with preference. Each new preference for an already existing stock will overwrite the existing preference(so be careful!)") .create("ip"); Option optF = OptionBuilder.hasArg().withArgName("itempreffile").withType(String.class) .withDescription("File to read stock preference data from").isRequired(false).create("f"); Option optH = OptionBuilder.hasArg(false).withArgName("help").withType(String.class) .withDescription("Display usage").isRequired(false).create("h"); options.addOption(optU); options.addOption(optI); options.addOption(optP); options.addOption(optIP); options.addOption(optF); options.addOption(optH); parser = new BasicParser(); CommandLine line = null; try { line = parser.parse(options, args); } catch (MissingOptionException e) { System.out.println("Missing options"); printUsage(); } catch (ParseException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } if (line.hasOption("help")) { printUsage(); } UserArgumentEmailType uEmailId = new UserArgumentEmailType(line.getOptionValue("u")); String uEmailIdStr = uEmailId.toString(); if (MongoDBUserModel.registered(uEmailIdStr)) { System.out.format("Already registered user %s\n", uEmailIdStr); } else { System.out.format("+--Starting transaction for user %s --+\n", uEmailIdStr); } if (line.hasOption("f")) { System.out.println("Query::UpdateDB: itempreffile(s)\n"); String[] uItemPrefFiles = line.getOptionValues("f"); for (String it : uItemPrefFiles) { System.out.format("Updating db with user file %s\n", it); UserItemPrefFile uItemPrefFile = new UserItemPrefFile(uEmailIdStr, it); uItemPrefFile.writeToDB(); } } if (line.hasOption("i")) { System.out.println("Query::ReadDB: item(s)\n"); String[] uItems = line.getOptionValues("i"); for (String it : uItems) { System.out.format("Searching for item %s in db\n", it); UserItem uItem = new UserItem(uEmailIdStr, it); uItem.readFromDB(); } } if (line.hasOption("p")) { System.out.println("Query::ReadDB: preference(s)"); String[] uPrefs = line.getOptionValues("p"); for (String it : uPrefs) { System.out.format("Searching for preference %s in db\n", it); UserPreference uPref = new UserPreference(uEmailIdStr, it); uPref.readFromDB(); } } if (line.hasOption("ip")) { System.out.println("Query::UpdateDB: itempref(s)\n"); String[] uItemPrefs = line.getOptionValues("ip"); for (String it : uItemPrefs) { System.out.format("Updating item:preference pair %s\n", it); String[] pair = it.split(":"); System.out.format("%s:%s:%s", uEmailIdStr, pair[0], pair[1]); UserItemPreference uItemPref = new UserItemPreference(uEmailIdStr, pair[0], pair[1]); uItemPref.writeToDB(); } } System.out.format("+-- Ending transaction for user %s --+\n", uEmailIdStr); }
From source file:com.comcast.oscar.cli.commands.Key.java
/** * Set option parameters for command Key * @return Option//from w w w . ja va 2 s .c o m */ public static Option OptionParameters() { OptionBuilder.withArgName("key filename"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("key"); OptionBuilder.withDescription("Use this sharedsecret to compile the file - DOCSIS ONLY."); return OptionBuilder.create("k"); }
From source file:com.comcast.oscar.cli.commands.TLV.java
/** * Set option parameters for command TLV * @return Option//from www .j a va 2 s . com */ public static final Option OptionParameters() { OptionBuilder.withArgName("TLV"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("tlv"); OptionBuilder.withDescription("Insert this TLV during file compilation."); return OptionBuilder.create("t"); }
From source file:com.comcast.oscar.cli.commands.Firmware.java
/** * Set option parameters for command Firmware * @return Option/*from www .j av a2s. c o m*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("filename"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("firmware"); OptionBuilder.withDescription("Insert this firmware during file compilation."); return OptionBuilder.create("f"); }
From source file:com.comcast.oscar.cli.commands.MaxCPE.java
/** * Set option parameters for command Maximum CPE * @return Option/*from w w w . jav a 2 s. c om*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("maximum CPEs"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("maxCPE"); OptionBuilder.withDescription("Insert the maximum CPEs during file compilation EX: 5."); return OptionBuilder.create("m"); }
From source file:com.comcast.oscar.cli.commands.DownstreamFrequency.java
/** * Set option parameters for command Downstream Frequency * @return Option//from w w w . ja v a2s .c om */ public static final Option OptionParameters() { OptionBuilder.withArgName("downstream frequency"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("dsfreq"); OptionBuilder.withDescription("Insert this downstream frequency during file compilation EX: 723000000."); return OptionBuilder.create("df"); }
From source file:com.comcast.oscar.cli.commands.TLVDescription.java
/** * Set option parameters for command TLV description * @return Option/*from w ww. j a va 2 s. c om*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("TLV dot notation"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("tlvdescription"); OptionBuilder.withDescription("Display the TLV description (EX: 26.1)."); return OptionBuilder.create("td"); }
From source file:com.comcast.oscar.cli.commands.TLVtoJSON.java
/** * Set option parameters for command TLV to JSON display * @return Option/*from ww w .j a v a2 s. co m*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("TLV"); OptionBuilder.hasArgs(); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("tlv2json"); OptionBuilder.withDescription( "View the JSON array of a TLV EX: 030101 (NetworkAccess: Type 3 Length 1 Value 1)."); return OptionBuilder.create("t2j"); }
From source file:com.comcast.oscar.cli.commands.Input.java
/** * Set option parameters for command Input * @return Option/*ww w . j av a 2 s .c o m*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("filename"); OptionBuilder.hasArgs(1); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("input"); OptionBuilder.withDescription("File to analyze and/or compile/decompile."); return OptionBuilder.create("i"); }
From source file:com.comcast.oscar.cli.commands.JSONtoTLV.java
/** * Set option parameters for command JSON to TLV display * @return Option/*from w ww . ja v a2 s. c o m*/ */ public static final Option OptionParameters() { OptionBuilder.withArgName("filename"); OptionBuilder.hasArgs(); OptionBuilder.hasOptionalArgs(); OptionBuilder.withValueSeparator(' '); OptionBuilder.withLongOpt("json2tlv"); OptionBuilder.withDescription("View the TLV number of a JSON array within the file."); return OptionBuilder.create("j2t"); }