}
}
+ // set individual session preferences
+ if (bootstrapArgs.contains(Arg.P))
+ {
+ for (String kev : bootstrapArgs.getValueList(Arg.P))
+ {
+ if (kev == null)
+ {
+ continue;
+ }
+ int equalsIndex = kev.indexOf(ArgParser.EQUALS);
+ if (equalsIndex > -1)
+ {
+ String key = kev.substring(0, equalsIndex);
+ String val = kev.substring(equalsIndex + 1);
+ Cache.setSessionProperty(key, val);
+ }
+ }
+ }
+
// Move any new getdown-launcher-new.jar into place over old
// getdown-launcher.jar
String appdirString = System.getProperty("getdownappdir");
// get bootstrap properties (mainly for the logger level)
Properties bootstrapProperties = Cache
- .bootstrapProperties(bootstrapArgs.get(Arg.PROPS));
+ .bootstrapProperties(bootstrapArgs.getValue(Arg.PROPS));
// report Jalview version
Cache.loadBuildProperties(
});
String usrPropsFile = bootstrapArgs.contains(Arg.PROPS)
- ? bootstrapArgs.get(Arg.PROPS)
+ ? bootstrapArgs.getValue(Arg.PROPS)
: aparser.getValue("props");
// if usrPropsFile == null, loadProperties will use the Channel
// preferences.file
}
// new CLI
- headlessArg = isHeadless(bootstrapArgs);
+ headlessArg = bootstrapArgs.isHeadless();
if (headlessArg)
{
System.setProperty("java.awt.headless", "true");
// allow https handshakes to download intermediate certs if necessary
System.setProperty("com.sun.security.enableAIAcaIssuers", "true");
- String jabawsUrl = bootstrapArgs.get(Arg.JABAWS);
+ String jabawsUrl = bootstrapArgs.getValue(Arg.JABAWS);
if (jabawsUrl == null)
jabawsUrl = aparser.getValue("jabaws");
if (jabawsUrl != null)
if (!(headless || headlessArg))
{
- Desktop.nosplash = "false".equals(bootstrapArgs.get(Arg.SPLASH))
+ Desktop.nosplash = "false".equals(bootstrapArgs.getValue(Arg.SPLASH))
|| aparser.contains("nosplash")
|| Cache.getDefault("SPLASH", "true").equals("false");
desktop = new Desktop();
testoutput(argparser, Arg.WEBSERVICEDISCOVERY);
}
- boolean usagestats = bootstrapArgs.getBoolean(Arg.USAGESTATS);
+ boolean usagestats = !bootstrapArgs.getBoolean(Arg.NOUSAGESTATS);
if (aparser.contains("nousagestats"))
usagestats = false;
if (usagestats)
{
startUsageStats(desktop);
- testoutput(argparser, Arg.USAGESTATS);
+ testoutput(argparser, Arg.NOUSAGESTATS);
}
else
{
System.out.println("CMD [-nousagestats] executed successfully!");
- testoutput(argparser, Arg.USAGESTATS);
+ testoutput(argparser, Arg.NOUSAGESTATS);
}
boolean questionnaire = bootstrapArgs.getBoolean(Arg.QUESTIONNAIRE);
if ((!aparser.contains("nonews")
&& Cache.getProperty("NONEWS") == null
- && !"false".equals(bootstrapArgs.get(Arg.NEWS)))
- || "true".equals(bootstrapArgs.get(Arg.NEWS)))
+ && !"false".equals(bootstrapArgs.getValue(Arg.NEWS)))
+ || "true".equals(bootstrapArgs.getValue(Arg.NEWS)))
{
desktop.checkForNews();
}
if (!Platform.isJS() && !headless && file == null
&& Cache.getDefault("SHOW_STARTUP_FILE", true)
- && !cmds.commandArgsProvided())
+ && !cmds.commandArgsProvided()
+ && !bootstrapArgs.getBoolean(Arg.NOSTARTUPFILE))
// don't open the startup file if command line args have been processed
// (&& !Commands.commandArgsProvided())
/**
}
/*
- * testoutput for boolean values
+ * testoutput for boolean and unary values
*/
protected static void testoutput(ArgParser ap, Arg a)
{
private static void testoutput(boolean yes, Arg a)
{
- System.out.println("[TESTOUTPUT] arg "
- + (yes ? a.argString() : a.negateArgString()) + " was set");
- }
-
- private static boolean isHeadless(BootstrapArgs bootstrapArgs)
- {
- if (bootstrapArgs == null)
- {
- return false;
- }
- boolean isHeadless = false;
- if (bootstrapArgs.contains(Arg.GUI))
- {
- isHeadless = !bootstrapArgs.getBoolean(Arg.GUI);
- }
- else if (bootstrapArgs.contains(Arg.HEADLESS))
+ String message = null;
+ if (a.hasOption(Opt.BOOLEAN))
{
- isHeadless = bootstrapArgs.getBoolean(Arg.HEADLESS);
+ message = (yes ? a.argString() : a.negateArgString()) + " was set";
}
- else if (bootstrapArgs.argsHaveOption(Opt.OUTPUTFILE))
+ else if (a.hasOption(Opt.UNARY))
{
- isHeadless = true;
+ message = a.argString() + (yes ? " was set" : " was not set");
}
- return isHeadless;
+ System.out.println("[TESTOUTPUT] arg " + message);
}
}