*/
protected abstract void exit (int exitCode);
+ private static boolean _disposed = false;
/**
* Copies the supplied stream from the specified input to the specified output. Used to copy
* our child processes stderr and stdout to our own stderr and stdout.
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
String line;
while ((line = reader.readLine()) != null) {
+ // check for desktop creation line and end early
+ if (!_disposed && line.endsWith("JALVIEW: CREATED DESKTOP")) {
+ // pump the percent up to 100%
+ if (_latestInstance != null) {
+ _latestInstance.setStatusAsync(null, 100, -1L, false);
+ // only running disposeContainer to remove the visual frame.
+ // Allow getdown to carry on running until timeout to capture more log lines.
+ _latestInstance.disposeContainer();
+ _disposed = true;
+ } else {
+ // let nature take its course
+ }
+ }
out.println(line);
out.flush();
}
}
+ // set the instance
+ protected static void setInstance(Getdown app) {
+ _latestInstance = app;
+ }
+
protected Application _app;
protected Application.UpdateInterface _ifc = new Application.UpdateInterface(Config.EMPTY);
protected static final int MAX_LOOPS = 5;
protected static final long FALLBACK_CHECK_TIME = 1000L;
+ private static Getdown _latestInstance = null;
}
});
desktop.addMouseListener(ma);
- if (Platform.isJS())
- {
- // used for jalviewjsTest
- jalview.bin.Console.info("JALVIEWJS: CREATED DESKTOP");
- }
+ // This is important for jalviewjsTest task and also early Getdown
+ // splashscreen removal
+ jalview.bin.Console.info((Platform.isJS() ? "JALVIEWJS" : "JALVIEW")
+ + ": CREATED DESKTOP");
}