Package org.apache.logging.log4j.util
Class ProviderUtil
- java.lang.Object
-
- org.apache.logging.log4j.util.ProviderUtil
-
public final class ProviderUtil extends Object
Consider this class private. Utility class for Log4jProvider
s. When integrating with an application container framework, any Log4j Providers not accessible through standard classpath scanning shouldloadProvider(java.net.URL, ClassLoader)
a classpath accordingly.
-
-
Field Summary
Fields Modifier and Type Field Description protected static String
PROVIDER_RESOURCE
Resource name for a Log4j 2 provider properties file.protected static Collection<Provider>
PROVIDERS
Loaded providers.protected static Lock
STARTUP_LOCK
Guards the ProviderUtil singleton instance from lazy initialization.
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected static void
addProvider(Provider provider)
static ClassLoader
findClassLoader()
static Iterable<Provider>
getProviders()
static boolean
hasProviders()
protected static void
lazyInit()
Lazily initializes the ProviderUtil singleton.protected static void
loadProvider(URL url, ClassLoader cl)
Loads an individual Provider implementation.protected static void
loadProviders(ClassLoader classLoader)
protected static void
loadProviders(Enumeration<URL> urls, ClassLoader cl)
Deprecated.UseloadProvider(java.net.URL, ClassLoader)
instead.
-
-
-
Field Detail
-
PROVIDER_RESOURCE
protected static final String PROVIDER_RESOURCE
Resource name for a Log4j 2 provider properties file.- See Also:
- Constant Field Values
-
PROVIDERS
protected static final Collection<Provider> PROVIDERS
Loaded providers.
-
STARTUP_LOCK
protected static final Lock STARTUP_LOCK
Guards the ProviderUtil singleton instance from lazy initialization. This is primarily used for OSGi support.- Since:
- 2.1
-
-
Method Detail
-
addProvider
protected static void addProvider(Provider provider)
-
loadProvider
protected static void loadProvider(URL url, ClassLoader cl)
Loads an individual Provider implementation. This method is really only useful for the OSGi bundle activator and this class itself.- Parameters:
url
- the URL to the provider properties filecl
- the ClassLoader to load the provider classes with
-
loadProviders
protected static void loadProviders(ClassLoader classLoader)
- Parameters:
classLoader
- null can be used to mark the bootstrap class loader.
-
loadProviders
@Deprecated protected static void loadProviders(Enumeration<URL> urls, ClassLoader cl)
Deprecated.UseloadProvider(java.net.URL, ClassLoader)
instead. Will be removed in 3.0.
-
hasProviders
public static boolean hasProviders()
-
lazyInit
protected static void lazyInit()
Lazily initializes the ProviderUtil singleton.- Since:
- 2.1
-
findClassLoader
public static ClassLoader findClassLoader()
-
-