/** * Returns the value (a string) for an argument with a value - * returns null for no argument and no value. * @param argName * @return String */ public String getValue(String argName) { Arg arg = getArg(argName) ; if ( arg == null ) return null ; return arg.getValue() ; }
/** * Add a named argument/value pair * @param name * @param value * @return this object */ public CmdLineArgs addArg(String name, String value) { if ( !args.containsKey(name) ) args.put(name, new Arg(name)) ; Arg arg = args.get(name) ; return addArgWorker(arg, value) ; }
private CmdLineArgs addArgWorker(Arg arg, String value) { ArgDecl argDecl = argMap.get(arg.getName()) ; if ( !argDecl.takesValue() && value != null ) throw new IllegalArgumentException("No value for argument: " + arg.getName()) ; if ( argDecl.takesValue() ) { if ( value == null ) throw new IllegalArgumentException("No value for argument: " + arg.getName()) ; arg.setValue(value) ; arg.addValue(value) ; } return this ; }
/** * Returns the value (a string) for an argument with a value - * returns null for no argument and no value. * @param argDecl * @return String */ public String getValue(ArgDecl argDecl) { Arg arg = getArg(argDecl) ; if ( arg == null ) return null ; if ( arg.hasValue() ) return arg.getValue() ; return null ; }
public boolean matches(Arg a) { String name = a.getName(); return names.stream().anyMatch(name::equals); }
public Arg(String _name) { this() ; setName(_name) ; }
/** * Returns the value (a string) for an argument with a value - * returns null for no argument and no value. * @param argDecl * @return String */ public String getValue(ArgDecl argDecl) { Arg arg = getArg(argDecl) ; if ( arg == null ) return null ; if ( arg.hasValue() ) return arg.getValue() ; return null ; }
public boolean matches(Arg a) { String name = a.getName(); return names.stream().anyMatch(name::equals); }
public Arg(String _name) { this() ; setName(_name) ; }
/** * Returns the value (a string) for an argument with a value - * returns null for no argument and no value. * @param argName * @return String */ public String getValue(String argName) { Arg arg = getArg(argName) ; if ( arg == null ) return null ; return arg.getValue() ; }
private CmdLineArgs addArgWorker(Arg arg, String value) { ArgDecl argDecl = argMap.get(arg.getName()) ; if ( !argDecl.takesValue() && value != null ) throw new IllegalArgumentException("No value for argument: " + arg.getName()) ; if ( argDecl.takesValue() ) { if ( value == null ) throw new IllegalArgumentException("No value for argument: " + arg.getName()) ; arg.setValue(value) ; arg.addValue(value) ; } return this ; }
/** * Returns all the values (0 or more strings) for an argument. * @param argDecl * @return List */ public List<String> getValues(ArgDecl argDecl) { Arg arg = getArg(argDecl) ; if ( arg == null ) return new ArrayList<>() ; return arg.getValues() ; }
/** * Add a named argument/value pair * @param name * @param value * @return this object */ public CmdLineArgs addArg(String name, String value) { if ( !args.containsKey(name) ) args.put(name, new Arg(name)) ; Arg arg = args.get(name) ; return addArgWorker(arg, value) ; }
@Override protected void processModulesAndArgs() { if ( contains(argDeclRepeat) ) repeatCount = Integer.parseInt(getArg(argDeclRepeat).getValue()) ; }
/** * Returns all the values (0 or more strings) for an argument. * @param argName * @return List */ public List<String> getValues(String argName) { Arg arg = getArg(argName) ; if ( arg == null ) return new ArrayList<>() ; return arg.getValues() ; }
/** Choose a port number or return null */ private static Integer chooseServerPort(CmdLineArgs cla) { // The port chosen from this ordered list: // Command line // Environment variable // Default. int port = -1; String portStr = null; if ( cla.contains(argPort) ) portStr = cla.getArg(argPort).getValue(); else // Compatibility portStr = getenv(DeltaConst.ENV_PORT); if ( portStr == null ) return DeltaConst.PORT; //cmdLineError("No server port given: use --%s", argPort.getKeyName()); try { port = Integer.parseInt(portStr); if ( port <= 0 ) throw new NumberFormatException(); return port; } catch (NumberFormatException ex) { cmdLineError("Failed to parse the port number: %s", portStr); return null; } }