public class ClassLoaderContextSelector extends Object implements ContextSelector, LoggerContextShutdownAware
| Modifier and Type | Field and Description |
|---|---|
protected static ConcurrentMap<String,AtomicReference<WeakReference<LoggerContext>>> |
CONTEXT_MAP |
protected static StatusLogger |
LOGGER |
DEFAULT_STOP_TIMEOUT| Constructor and Description |
|---|
ClassLoaderContextSelector() |
| Modifier and Type | Method and Description |
|---|---|
void |
contextShutdown(LoggerContext loggerContext) |
protected LoggerContext |
createContext(String name,
URI configLocation) |
protected String |
defaultContextName() |
LoggerContext |
getContext(String fqcn,
ClassLoader loader,
boolean currentContext)
Returns the LoggerContext.
|
LoggerContext |
getContext(String fqcn,
ClassLoader loader,
boolean currentContext,
URI configLocation)
Returns the LoggerContext.
|
LoggerContext |
getContext(String fqcn,
ClassLoader loader,
Map.Entry<String,Object> entry,
boolean currentContext,
URI configLocation)
Returns the LoggerContext.
|
protected LoggerContext |
getDefault() |
List<LoggerContext> |
getLoggerContexts()
Returns a List of all the available LoggerContexts.
|
boolean |
hasContext(String fqcn,
ClassLoader loader,
boolean currentContext)
Checks to see if a LoggerContext is installed.
|
boolean |
isClassLoaderDependent()
Determines whether or not this ContextSelector depends on the callers classloader.
|
void |
removeContext(LoggerContext context)
Remove any references to the LoggerContext.
|
void |
shutdown(String fqcn,
ClassLoader loader,
boolean currentContext,
boolean allContexts)
Shuts down the LoggerContext.
|
protected String |
toContextMapKey(ClassLoader loader) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetContextprotected static final StatusLogger LOGGER
protected static final ConcurrentMap<String,AtomicReference<WeakReference<LoggerContext>>> CONTEXT_MAP
public void shutdown(String fqcn, ClassLoader loader, boolean currentContext, boolean allContexts)
ContextSelectorshutdown in interface ContextSelectorfqcn - 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.public void contextShutdown(LoggerContext loggerContext)
contextShutdown in interface LoggerContextShutdownAwarepublic boolean hasContext(String fqcn, ClassLoader loader, boolean currentContext)
ContextSelectorhasContext in interface ContextSelectorfqcn - 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.public LoggerContext getContext(String fqcn, ClassLoader loader, boolean currentContext)
ContextSelectorgetContext in interface ContextSelectorfqcn - 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.public LoggerContext getContext(String fqcn, ClassLoader loader, boolean currentContext, URI configLocation)
ContextSelectorgetContext in interface ContextSelectorfqcn - 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.public LoggerContext getContext(String fqcn, ClassLoader loader, Map.Entry<String,Object> entry, boolean currentContext, URI configLocation)
ContextSelectorgetContext in interface ContextSelectorfqcn - 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.public void removeContext(LoggerContext context)
ContextSelectorremoveContext in interface ContextSelectorcontext - The context to remove.public boolean isClassLoaderDependent()
ContextSelectortrue to preserve the old behavior.isClassLoaderDependent in interface ContextSelectorpublic List<LoggerContext> getLoggerContexts()
ContextSelectorgetLoggerContexts in interface ContextSelectorprotected LoggerContext createContext(String name, URI configLocation)
protected String toContextMapKey(ClassLoader loader)
protected LoggerContext getDefault()
protected String defaultContextName()
Copyright © 1999-2021 The Apache Software Foundation. All Rights Reserved.
Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo, and the Apache Log4j logo are trademarks of The Apache Software Foundation.