Class BundleContextSelector
java.lang.Object
org.apache.logging.log4j.core.selector.ClassLoaderContextSelector
org.apache.logging.log4j.core.osgi.BundleContextSelector
- All Implemented Interfaces:
ContextSelector
,LoggerContextShutdownAware
ContextSelector for OSGi bundles. This ContextSelector works rather similarly to the
ClassLoaderContextSelector
, but instead of each ClassLoader having its own LoggerContext (like in a
servlet container), each OSGi bundle has its own LoggerContext.- Since:
- 2.1
-
Field Summary
Fields inherited from class org.apache.logging.log4j.core.selector.ClassLoaderContextSelector
CONTEXT_MAP, LOGGER
Fields inherited from interface org.apache.logging.log4j.core.selector.ContextSelector
DEFAULT_STOP_TIMEOUT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiongetContext
(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation) Returns the LoggerContext.boolean
hasContext
(String fqcn, ClassLoader loader, boolean currentContext) Checks to see if a LoggerContext is installed.void
shutdown
(String fqcn, ClassLoader loader, boolean currentContext, boolean allContexts) Shuts down the LoggerContext.Methods inherited from class org.apache.logging.log4j.core.selector.ClassLoaderContextSelector
contextShutdown, createContext, defaultContextName, getContext, getContext, getDefault, getLoggerContexts, isClassLoaderDependent, removeContext, toContextMapKey
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.logging.log4j.core.selector.ContextSelector
getContext
-
Constructor Details
-
BundleContextSelector
public BundleContextSelector()
-
-
Method Details
-
shutdown
Description copied from interface:ContextSelector
Shuts down the LoggerContext.- Specified by:
shutdown
in interfaceContextSelector
- Overrides:
shutdown
in classClassLoaderContextSelector
- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- The ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriateallContexts
- if true all LoggerContexts that can be located will be shutdown.
-
hasContext
Description copied from interface:ContextSelector
Checks to see if a LoggerContext is installed. The default implementation returns false.- Specified by:
hasContext
in interfaceContextSelector
- Overrides:
hasContext
in classClassLoaderContextSelector
- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- The ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.- Returns:
- true if a LoggerContext has been installed, false otherwise.
-
getContext
public LoggerContext getContext(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation) Description copied from interface:ContextSelector
Returns the LoggerContext.- Specified by:
getContext
in interfaceContextSelector
- Overrides:
getContext
in classClassLoaderContextSelector
- Parameters:
fqcn
- The fully qualified class name of the caller.loader
- ClassLoader to use or null.currentContext
- If true returns the current Context, if false returns the Context appropriate for the caller if a more appropriate Context can be determined.configLocation
- The location of the configuration for the LoggerContext.- Returns:
- The LoggerContext.
-