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 ClassLoaderContextSelector
CONTEXT_MAP, LOGGERFields inherited from interface ContextSelector
DEFAULT_STOP_TIMEOUT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetContext(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation) Returns the LoggerContext.private LoggerContextgetLoggerContext(org.osgi.framework.Bundle bundle) booleanhasContext(String fqcn, ClassLoader loader, boolean currentContext) Checks to see if a LoggerContext is installed.private static booleanhasContext(org.osgi.framework.Bundle bundle) private static LoggerContextlocateContext(org.osgi.framework.Bundle bundle, URI configLocation) private voidremoveLoggerContext(LoggerContext context) voidshutdown(String fqcn, ClassLoader loader, boolean currentContext, boolean allContexts) Shuts down the LoggerContext.Methods inherited from class ClassLoaderContextSelector
contextShutdown, createContext, defaultContextName, getContext, getContext, getDefault, getLoggerContexts, isClassLoaderDependent, removeContext, toContextMapKeyMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ContextSelector
getContext
-
Constructor Details
-
BundleContextSelector
public BundleContextSelector()
-
-
Method Details
-
shutdown
Description copied from interface:ContextSelectorShuts down the LoggerContext.- Specified by:
shutdownin interfaceContextSelector- Overrides:
shutdownin 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.
-
getLoggerContext
-
removeLoggerContext
-
hasContext
Description copied from interface:ContextSelectorChecks to see if a LoggerContext is installed. The default implementation returns false.- Specified by:
hasContextin interfaceContextSelector- Overrides:
hasContextin 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:ContextSelectorReturns the LoggerContext.- Specified by:
getContextin interfaceContextSelector- Overrides:
getContextin 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.
-
hasContext
private static boolean hasContext(org.osgi.framework.Bundle bundle) -
locateContext
-