What happens when Kepler starts up
A brief look at some useful aspects of the initialization process when Kepler starts up.
- The startup class is org.kepler.Kepler. This class specializes in making it easy to run Kepler either in standard mode (in which case org.kepler.gui.KeplerApplication is called) or through the command-line (in which case ptolemy.actor.gui.MoMLSimpleApplication is called).
- org.kepler.gui.KeplerApplication reads the configuration file ($KEPLER/lib/configuration.xml) to identify the path name to the splash screen. It then brings up the splash screen.
- The startup class then uses SplashWindow.invokeMain("ptolemy.vergil.VergilApplication", args) to execute the ptolemy.vergil.VergilApplication class.
- VergilApplication
extends MoMLApplication and reads config information passed on command line (e.g
'kepler') See configs/ptolemy/configs/kepler/configuration.xml. Note that this config
file sets a parameter called '_applicationInitializer'; if that parameter
exists, MoMLApplication calls the class in that parameter. In Kepler,
_applicationInitializer is set to org.kepler.gui.KeplerInitializer:
<!-- Specify the name of the class that initializes the application. --> <property name="_applicationInitializer" class="ptolemy.data.expr.StringParameter" value="org.kepler.gui.KeplerInitializer" />
- org.kepler.gui.KeplerInitializer performs any Kepler specific initialization tasks, including making directories and starting up the built-in HSQL database
- VergilApplication loads the UserLibrary; see ptolemy.actor.gui.UserActorLibrary. UserActorLibrary checks for _alternateLibraryBuilder attribute set in configs to build library using libraryBuilder class (currently 'org/kepler/moml/KSWLibraryBuilder')