## org.jfree.report
Class JFreeReportBoot

    java.lang.Object
      org.pentaho.reporting.libraries.base.boot.AbstractBoot
          org.jfree.report.JFreeReportBoot

All Implemented Interfaces:
  org.pentaho.reporting.libraries.base.boot.SubSystem

    public class JFreeReportBoot

extends org.pentaho.reporting.libraries.base.boot.AbstractBoot

An utility class to safely boot and initialize the JFreeReport library. This class should be called before using the JFreeReport classes, to make sure that all subsystems are initialized correctly and in the correct order.

Application developers should make sure, that the booting is done, before JFreeReport objects are used. Although the boot process will be started automaticly if needed, this automated start may no longer guarantee the module initialization order.

Additional modules can be specified by defining the system property `"org.jfree.report.boot.Modules"`. The property expects a comma-separated list of `org.jfree.base.modules.Module` implementations.

Booting should be done by aquirering a new boot instance using `getInstance()` and then starting the boot process with `AbstractBoot.start()`.

Author:
  Thomas Morgner

Method Summary
`org.pentaho.reporting.libraries.base.config.ModifiableConfiguration` `getEditableConfig()` Returns the current global configuration as modifiable instance.
`static JFreeReportBoot` `getInstance()` Returns the singleton instance of the boot utility class.
`protected org.pentaho.reporting.libraries.base.versioning.ProjectInformation` `getProjectInfo()` Returns the project info.
`static org.pentaho.reporting.libraries.base.config.Configuration` `getUserConfig()` Returns the user supplied global configuration.
`protected org.pentaho.reporting.libraries.base.config.Configuration` `loadConfiguration()` Loads the configuration.
`protected void` `performBoot()` Performs the actual boot process.
`static void` `setUserConfig(org.pentaho.reporting.libraries.base.config.Configuration config)` Defines the global user configuration.

Methods inherited from class org.pentaho.reporting.libraries.base.boot.AbstractBoot
`createDefaultHierarchicalConfiguration, getBootFailureReason, getExtendedConfig, getGlobalConfig, getPackageManager, isBootDone, isBootFailed, isBootInProgress, loadBooter, loadBooter, start`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### getInstance

    public static JFreeReportBoot getInstance()

  Returns the singleton instance of the boot utility class.

  Returns:
    the boot instance.

### getEditableConfig

    public org.pentaho.reporting.libraries.base.config.ModifiableConfiguration getEditableConfig()

  Returns the current global configuration as modifiable instance. This is exactly the same as casting the global configuration into a ModifableConfiguration instance.

  This is a convinience function, as all programmers are lazy.

  Returns:
    the global config as modifiable configuration.

### getProjectInfo

    protected org.pentaho.reporting.libraries.base.versioning.ProjectInformation getProjectInfo()

  Returns the project info.

  Specified by:
    `getProjectInfo` in class `org.pentaho.reporting.libraries.base.boot.AbstractBoot`
  Returns:
    The project info.

### loadConfiguration

    protected org.pentaho.reporting.libraries.base.config.Configuration loadConfiguration()

  Loads the configuration. This will be called exactly once.

  Specified by:
    `loadConfiguration` in class `org.pentaho.reporting.libraries.base.boot.AbstractBoot`
  Returns:
    The configuration.

### performBoot

    protected void performBoot()

  Performs the actual boot process.

  Specified by:
    `performBoot` in class `org.pentaho.reporting.libraries.base.boot.AbstractBoot`

### getUserConfig

    public static org.pentaho.reporting.libraries.base.config.Configuration getUserConfig()

  Returns the user supplied global configuration.

  Returns:
    the user configuration, if any.

### setUserConfig

    public static void setUserConfig(org.pentaho.reporting.libraries.base.config.Configuration config)

  Defines the global user configuration.

  Parameters:
    `config` - the user configuration.