Class PluginManager
java.lang.Object
org.apache.logging.log4j.core.config.plugins.util.PluginManager
Loads and manages all the plugins.
-
Constructor Summary
ConstructorDescriptionPluginManager
(String category) Constructs a PluginManager for the plugin category name given. -
Method Summary
Modifier and TypeMethodDescriptionstatic void
addPackage
(String p) Adds a package name to be scanned for plugins.static void
addPackages
(Collection<String> packages) Adds a list of package names to be scanned for plugins.void
Locates all the plugins.void
collectPlugins
(List<String> packages) Locates all the plugins including search of specific packages.Map<String,
PluginType<?>> Returns all the matching plugins.PluginType<?>
getPluginType
(String name) Returns the type of a specified plugin.static void
Deprecated.
-
Constructor Details
-
PluginManager
Constructs a PluginManager for the plugin category name given.- Parameters:
category
- The plugin category name.
-
-
Method Details
-
main
Deprecated.UsePluginProcessor
instead. To do so, simply includelog4j-core
in your dependencies and make sure annotation processing is not disabled. By default, supported Java compilers will automatically use that plugin processor providedlog4j-core
is on the classpath.Process annotated plugins. -
addPackage
Adds a package name to be scanned for plugins. Must be invoked prior to plugins being collected.- Parameters:
p
- The package name. Ignored ifnull
or empty.
-
addPackages
Adds a list of package names to be scanned for plugins. Convenience method foraddPackage(String)
.- Parameters:
packages
- collection of package names to add. Empty and null package names are ignored.
-
getPluginType
Returns the type of a specified plugin.- Parameters:
name
- The name of the plugin.- Returns:
- The plugin's type.
-
getPlugins
Returns all the matching plugins.- Returns:
- A Map containing the name of the plugin and its type.
-
collectPlugins
public void collectPlugins()Locates all the plugins. -
collectPlugins
Locates all the plugins including search of specific packages. Warns about name collisions.- Parameters:
packages
- the list of packages to scan for plugins- Since:
- 2.1
-
PluginProcessor
instead.