code: public void addPlugin(Plugin plugin) {
          if (!mPluginMap.containsKey(plugin.getName())) {
              mPluginMap.put(plugin.getName(), plugin);
              PluginEvent event = new PluginEvent(this, plugin);
              firePluginAddedEvent(event);
          }
      }
docs: Adds a Plugin to the PluginContext. Plugins that want to make
  themselves available to other Plugins should add themselves
  to the PluginContext through this method. All PluginListeners
  will be notified of the new addition.
  
  @param plugin the Plugin to be added.