/**
  * Loads the plugin from the PluginLoader. This will also start the Plugin and add it to the
  * PluginRegistry's resoure loaders.
  */
 public synchronized void load() throws Exception {
   plugin = loader.load();
   plugin.setSuppressStartupFailure(suppressStartupFailure);
   // it's important that the plugin is added to the resource loading system prior to startup
   // because
   // startup may need to grab services
   registry.addResourceLoader(plugin);
   plugin.start();
   loaded = true;
 }