Launcher


A Launcher provides squeak with a range of capabilities that are intended to be used from the command line.

 

As a design goal, the startup process can invoke Launcher several times at several points in the startup sequence. In particular 1) below aims to provide a mechanism for getting in to images that are broken in some form, so as to enable a script to be run before morphic has attempted to startup.

 

1) Launcher is registered to handle startup notification after Security manager

any class which wishes to provide a service to be usable at this time implements #startFrom:

 

2) Launcher is wired in to ProjectLauncher to handle startup notification when squeak is fully initialized. Any class wishing to provide a service to be usable at this time implements #launchFrom:

 

#startFrom: and #launchFrom: are called providing a handle to the launcher which may be used to obtain parameters using the desired scheme.

 

a) launcher getParameters . key=value +yes -no

b) launcher getParametersOldStyle . key value key2 value2

 

Instance Variables

actionSelector: #startFrom: #launchFrom:

commandLineClass: aClass

image: the smalltalk image or self if being a mock

mock: the mock array of startup parameters

nextCommandLineDocument: aString

nextParameterIndex: anInteger