Log4j 1.3alpha-1

org.apache.log4j.plugins
Class PluginRegistry

java.lang.Object
  |
  +--org.apache.log4j.plugins.PluginRegistry

public final class PluginRegistry
extends java.lang.Object

This is a registry for Plugin instances. It provides methods to start and stop plugin objects individually and to stop all plugins for a repository.

Since:
1.3
Author:
Mark Womack, Paul Smith

Constructor Summary
PluginRegistry(LoggerRepository loggerRepository)
           
 
Method Summary
 void addPlugin(Plugin plugin)
          Adds a plugin to the plugin registry.
 void addPluginListener(PluginListener l)
          Adds a PluginListener to this registry to be notified of PluginEvents
 LoggerRepository getLoggerRepository()
           
 java.util.List getPlugins()
          Returns all the plugins for a given repository.
 java.util.List getPlugins(java.lang.Class pluginClass)
          Returns all the plugins for a given repository that are instances of a certain class.
 boolean pluginNameExists(java.lang.String name)
          Returns true if the specified name is already taken by an existing Plugin registered within the scope of the specified LoggerRepository.
 void removePluginListener(PluginListener l)
          Removes a particular PluginListener from this registry such that it will no longer be notified of PluginEvents
 void stopAllPlugins()
          Stops all plugins in the given logger repository.
 Plugin stopPlugin(java.lang.String pluginName)
          Stops a plugin by plugin name and repository.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PluginRegistry

public PluginRegistry(LoggerRepository loggerRepository)
Method Detail

getLoggerRepository

public LoggerRepository getLoggerRepository()

pluginNameExists

public boolean pluginNameExists(java.lang.String name)
Returns true if the specified name is already taken by an existing Plugin registered within the scope of the specified LoggerRepository.

Parameters:
name - The name to check the repository for
Returns:
true if the name is already in use, otherwise false

addPlugin

public void addPlugin(Plugin plugin)
Adds a plugin to the plugin registry. If a plugin with the same name exists already, it is shutdown and removed.

Parameters:
plugin - the plugin to add.

getPlugins

public java.util.List getPlugins()
Returns all the plugins for a given repository.

Returns:
List list of plugins from the repository.

getPlugins

public java.util.List getPlugins(java.lang.Class pluginClass)
Returns all the plugins for a given repository that are instances of a certain class.

Parameters:
pluginClass - the class the plugin must implement to be selected.
Returns:
List list of plugins from the repository.

stopPlugin

public Plugin stopPlugin(java.lang.String pluginName)
Stops a plugin by plugin name and repository.

Parameters:
pluginName - the name of the plugin to stop.
Returns:
Plugin the plugin, if stopped, or null if the the plugin was not found in the registry.

stopAllPlugins

public void stopAllPlugins()
Stops all plugins in the given logger repository.


addPluginListener

public final void addPluginListener(PluginListener l)
Adds a PluginListener to this registry to be notified of PluginEvents

Parameters:
l - PluginListener to add to this registry

removePluginListener

public final void removePluginListener(PluginListener l)
Removes a particular PluginListener from this registry such that it will no longer be notified of PluginEvents

Parameters:
l - PluginListener to remove

Log4j 1.3alpha-1

Copyright 2000-2003 Apache Software Foundation.