public class Log4jContextFactory extends java.lang.Object implements LoggerContextFactory, ShutdownCallbackRegistry
| Modifier and Type | Field and Description |
|---|---|
private static StatusLogger |
LOGGER |
private ContextSelector |
selector |
private static boolean |
SHUTDOWN_HOOK_ENABLED |
private ShutdownCallbackRegistry |
shutdownCallbackRegistry |
SHUTDOWN_CALLBACK_REGISTRY, SHUTDOWN_HOOK_MARKER| Constructor and Description |
|---|
Log4jContextFactory()
Initializes the ContextSelector from system property
Constants.LOG4J_CONTEXT_SELECTOR. |
Log4jContextFactory(ContextSelector selector)
Initializes this factory's ContextSelector with the specified selector.
|
Log4jContextFactory(ContextSelector selector,
ShutdownCallbackRegistry shutdownCallbackRegistry)
Constructs a Log4jContextFactory using the provided ContextSelector and ShutdownRegistrationStrategy.
|
Log4jContextFactory(ShutdownCallbackRegistry shutdownCallbackRegistry)
Constructs a Log4jContextFactory using the ContextSelector from
Constants.LOG4J_CONTEXT_SELECTOR
and the provided ShutdownRegistrationStrategy. |
| Modifier and Type | Method and Description |
|---|---|
Cancellable |
addShutdownCallback(java.lang.Runnable callback)
Adds a Runnable shutdown callback to this class.
|
private static ContextSelector |
createContextSelector() |
private static ShutdownCallbackRegistry |
createShutdownCallbackRegistry() |
LoggerContext |
getContext(java.lang.String fqcn,
java.lang.ClassLoader loader,
java.lang.Object externalContext,
boolean currentContext)
Loads the LoggerContext using the ContextSelector.
|
LoggerContext |
getContext(java.lang.String fqcn,
java.lang.ClassLoader loader,
java.lang.Object externalContext,
boolean currentContext,
Configuration configuration)
Loads the LoggerContext using the ContextSelector using the provided Configuration
|
LoggerContext |
getContext(java.lang.String fqcn,
java.lang.ClassLoader loader,
java.lang.Object externalContext,
boolean currentContext,
ConfigurationSource source)
Loads the LoggerContext using the ContextSelector.
|
LoggerContext |
getContext(java.lang.String fqcn,
java.lang.ClassLoader loader,
java.lang.Object externalContext,
boolean currentContext,
java.util.List<java.net.URI> configLocations,
java.lang.String name) |
LoggerContext |
getContext(java.lang.String fqcn,
java.lang.ClassLoader loader,
java.lang.Object externalContext,
boolean currentContext,
java.net.URI configLocation,
java.lang.String name)
Loads the LoggerContext using the ContextSelector.
|
ContextSelector |
getSelector()
Returns the ContextSelector.
|
ShutdownCallbackRegistry |
getShutdownCallbackRegistry()
Returns the ShutdownCallbackRegistry
|
private void |
initializeShutdownCallbackRegistry() |
void |
removeContext(LoggerContext context)
Removes knowledge of a LoggerContext.
|
private static final StatusLogger LOGGER
private static final boolean SHUTDOWN_HOOK_ENABLED
private final ContextSelector selector
private final ShutdownCallbackRegistry shutdownCallbackRegistry
public Log4jContextFactory()
Constants.LOG4J_CONTEXT_SELECTOR.public Log4jContextFactory(ContextSelector selector)
selector - the selector to usepublic Log4jContextFactory(ShutdownCallbackRegistry shutdownCallbackRegistry)
Constants.LOG4J_CONTEXT_SELECTOR
and the provided ShutdownRegistrationStrategy.shutdownCallbackRegistry - the ShutdownRegistrationStrategy to usepublic Log4jContextFactory(ContextSelector selector, ShutdownCallbackRegistry shutdownCallbackRegistry)
selector - the selector to useshutdownCallbackRegistry - the ShutdownRegistrationStrategy to useprivate static ContextSelector createContextSelector()
private static ShutdownCallbackRegistry createShutdownCallbackRegistry()
private void initializeShutdownCallbackRegistry()
public LoggerContext getContext(java.lang.String fqcn, java.lang.ClassLoader loader, java.lang.Object externalContext, boolean currentContext)
getContext in interface LoggerContextFactoryfqcn - 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.externalContext - An external context (such as a ServletContext) to be associated with the LoggerContext.public LoggerContext getContext(java.lang.String fqcn, java.lang.ClassLoader loader, java.lang.Object externalContext, boolean currentContext, ConfigurationSource source)
fqcn - The fully qualified class name of the caller.loader - The ClassLoader to use or null.externalContext - An external context (such as a ServletContext) to be associated with the LoggerContext.currentContext - If true returns the current Context, if false returns the Context appropriate
for the caller if a more appropriate Context can be determined.source - The configuration source.public LoggerContext getContext(java.lang.String fqcn, java.lang.ClassLoader loader, java.lang.Object externalContext, boolean currentContext, Configuration configuration)
fqcn - The fully qualified class name of the caller.loader - The ClassLoader to use or null.externalContext - An external context (such as a ServletContext) to be associated with the LoggerContext.currentContext - If true returns the current Context, if false returns the Context appropriate
for the caller if a more appropriate Context can be determined.configuration - The Configuration.public LoggerContext getContext(java.lang.String fqcn, java.lang.ClassLoader loader, java.lang.Object externalContext, boolean currentContext, java.net.URI configLocation, java.lang.String name)
getContext in interface LoggerContextFactoryfqcn - The fully qualified class name of the caller.loader - The ClassLoader to use or null.externalContext - An external context (such as a ServletContext) to be associated with the LoggerContext.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 (or null).name - The name of the context or null.public LoggerContext getContext(java.lang.String fqcn, java.lang.ClassLoader loader, java.lang.Object externalContext, boolean currentContext, java.util.List<java.net.URI> configLocations, java.lang.String name)
public ContextSelector getSelector()
public ShutdownCallbackRegistry getShutdownCallbackRegistry()
public void removeContext(LoggerContext context)
removeContext in interface LoggerContextFactorycontext - The context to remove.public Cancellable addShutdownCallback(java.lang.Runnable callback)
ShutdownCallbackRegistryaddShutdownCallback in interface ShutdownCallbackRegistrycallback - the shutdown callback to be executed upon shutdown.null if the shutdown hook is disabled and
cannot be added.