Module Initialization
The InfoGrid Module Framework is driven by a BootLoader. Several BootLoader implementations exist. The CommandlineBootLoader will be used for explanation purposes; other BootLoader implementations work in a similar manner.
The BootLoader is run with a number of configuration parameters, which may include:
- the name of the desired root StandardModule; this is required
- location of Modules
- possible overriding configuration parameters
The BootLoader:
- Creates and initializes the ModuleRegistry, which entails:
- examining the provided location of Modules in the file system or on the network
- loading found ModuleAdvertisements
- Finds the root StandardModule
- Recursively activates the root StandardModule (and all of its dependencies), which entails:
- finding all dependent Modules of the current Module, and activating those
- determining whether a given Module has an activation method specified in its ModuleAdvertisement, and if so, running it
- Recursively configures the root StandardModule (and all of this dependencies)
- determining configuration parameters for the current Module
- finding all dependent Modules of the current Module, and configuring those, possibly overriding their configuration parameters
- determining whether a given Module has a configuration method specified in its ModuleAdvertisement, and if so, running it, possiblye with overridden configuration parameters
- Runs the root StandardModule
- Recursively deactivating the root StandardModule (and all of its dependencies), which entails:
- determining whether a given Module has a deactivation method specified in its ModuleAdvertisement, and if so, running it
- finding all dependent Modules of the current Module, and deactivating those
- Quits.
See also:
