Class PackageManager
java.lang.Object
org.pentaho.reporting.libraries.base.boot.PackageManager
The PackageManager is used to load and configure the modules of JFreeReport. Modules are used to extend the basic
capabilities of JFreeReport by providing a simple plugin-interface.
Modules provide a simple capability to remove unneeded functionality from the JFreeReport system and to reduce the
overall code size. The modularisation provides a very strict way of removing unnecessary dependencies beween the
various packages.
The package manager can be used to add new modules to the system or to check the existence and state of installed
modules.
- Author:
- Thomas Morgner
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
static class
The PackageConfiguration handles the module level configuration. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a module to the package manager.Module[]
Returns all active modules.Module[]
Returns an array of the currently active modules.Returns the default package configuration.void
Initializes all previously uninitialized modules.boolean
isModuleAvailable
(String moduleClass) Checks whether the given module is available.boolean
isModuleAvailable
(ModuleInfo moduleDescription) Checks, whether a certain module is available.void
Loads all modules mentioned in the report configuration starting with the given prefix.void
Prints the modules that are used.
-
Constructor Details
-
PackageManager
Creates a new package manager.- Parameters:
booter
- the booter (null
not permitted).
-
-
Method Details
-
isModuleAvailable
Checks, whether a certain module is available.- Parameters:
moduleDescription
- the module description of the desired module.- Returns:
- true, if the module is available and the version of the module is compatible, false otherwise.
-
isModuleAvailable
Checks whether the given module is available. The method returns true if the module is defined and has been properly initialized.- Parameters:
moduleClass
- the module class to be checked.- Returns:
- true, if the module is available and initialized, false otherwise.
-
load
Loads all modules mentioned in the report configuration starting with the given prefix. This method is used during the boot process of JFreeReport. You should never need to call this method directly.- Parameters:
modulePrefix
- the module prefix.
-
initializeModules
public void initializeModules()Initializes all previously uninitialized modules. Once a module is initialized, it is not re-initialized a second time. -
addModule
Adds a module to the package manager. Once all modules are added, you have to call initializeModules() to configure and initialize the new modules.- Parameters:
modClass
- the module class
-
getPackageConfiguration
Returns the default package configuration. Private report configuration instances may be inserted here. These inserted configuration can never override the settings from this package configuration.- Returns:
- the package configuration.
-
getAllModules
Returns an array of the currently active modules. The module definition returned contain all known modules, including buggy and unconfigured instances.- Returns:
- the modules.
-
getActiveModules
Returns all active modules. This array does only contain modules which were successfully configured and initialized.- Returns:
- the list of all active modules.
-
printUsedModules
Prints the modules that are used.- Parameters:
p
- the print stream.
-