Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.logging.log4j.core.impl
Class Log4jContextFactory

    java.lang.Object
      org.apache.logging.log4j.core.impl.Log4jContextFactory

All Implemented Interfaces:
  ShutdownCallbackRegistry, org.apache.logging.log4j.spi.LoggerContextFactory

    public class Log4jContextFactory

extends Object
implements org.apache.logging.log4j.spi.LoggerContextFactory, ShutdownCallbackRegistry

Factory to locate a ContextSelector and then load a LoggerContext.

Field Summary

Fields inherited from interface org.apache.logging.log4j.core.util.ShutdownCallbackRegistry
`SHUTDOWN_CALLBACK_REGISTRY, SHUTDOWN_HOOK_MARKER`

Constructor Summary
`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.

Method Summary
`Cancellable` | `addShutdownCallback(Runnable callback)` Adds a Runnable shutdown callback to this class.
`LoggerContext` | `getContext(String fqcn, ClassLoader loader, Object externalContext, boolean currentContext)` Loads the LoggerContext using the ContextSelector.
`LoggerContext` | `getContext(String fqcn, ClassLoader loader, Object externalContext, boolean currentContext, ConfigurationSource source)` Loads the LoggerContext using the ContextSelector.
`LoggerContext` | `getContext(String fqcn, ClassLoader loader, Object externalContext, boolean currentContext, URI configLocation, String name)` Loads the LoggerContext using the ContextSelector.
`ContextSelector` | `getSelector()` Returns the ContextSelector.
`void` | `removeContext(org.apache.logging.log4j.spi.LoggerContext context)` Removes knowledge of a LoggerContext.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Log4jContextFactory

    public Log4jContextFactory()

  Initializes the ContextSelector from system property `Constants.LOG4J_CONTEXT_SELECTOR`.

### Log4jContextFactory

    public Log4jContextFactory(ContextSelector selector)

  Initializes this factory's ContextSelector with the specified selector.

  Parameters:
    `selector` - the selector to use

### Log4jContextFactory

    public Log4jContextFactory(ShutdownCallbackRegistry shutdownCallbackRegistry)

  Constructs a Log4jContextFactory using the ContextSelector from `Constants.LOG4J_CONTEXT_SELECTOR` and the provided ShutdownRegistrationStrategy.

  Parameters:
    `shutdownCallbackRegistry` - the ShutdownRegistrationStrategy to use
  Since:
    2.1

### Log4jContextFactory

    public Log4jContextFactory(ContextSelector selector,
                               ShutdownCallbackRegistry shutdownCallbackRegistry)

  Constructs a Log4jContextFactory using the provided ContextSelector and ShutdownRegistrationStrategy.

  Parameters:
    `selector` - the selector to use
    `shutdownCallbackRegistry` - the ShutdownRegistrationStrategy to use
  Since:
    2.1

Method Detail

### getContext

    public LoggerContext getContext(String fqcn,
                                    ClassLoader loader,
                                    Object externalContext,
                                    boolean currentContext)

  Loads the LoggerContext using the ContextSelector.

  Specified by:
    `getContext` in interface `org.apache.logging.log4j.spi.LoggerContextFactory`
  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.
    `externalContext` - An external context (such as a ServletContext) to be associated with the LoggerContext.
  Returns:
    The LoggerContext.

### getContext

    public LoggerContext getContext(String fqcn,
                                    ClassLoader loader,
                                    Object externalContext,
                                    boolean currentContext,
                                    ConfigurationSource source)

  Loads the LoggerContext using the ContextSelector.

  Parameters:
    `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.
  Returns:
    The LoggerContext.

### getContext

    public LoggerContext getContext(String fqcn,
                                    ClassLoader loader,
                                    Object externalContext,
                                    boolean currentContext,
                                    URI configLocation,
                                    String name)

  Loads the LoggerContext using the ContextSelector.

  Specified by:
    `getContext` in interface `org.apache.logging.log4j.spi.LoggerContextFactory`
  Parameters:
    `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.
    `configLocation` - The location of the configuration for the LoggerContext.
  Returns:
    The LoggerContext.

### getSelector

    public ContextSelector getSelector()

  Returns the ContextSelector.

  Returns:
    The ContextSelector.

### removeContext

    public void removeContext(org.apache.logging.log4j.spi.LoggerContext context)

  Removes knowledge of a LoggerContext.

  Specified by:
    `removeContext` in interface `org.apache.logging.log4j.spi.LoggerContextFactory`
  Parameters:
    `context` - The context to remove.

### addShutdownCallback

    public Cancellable addShutdownCallback(Runnable callback)

  Description copied from interface: `ShutdownCallbackRegistry`
  Adds a Runnable shutdown callback to this class.

  Specified by:
    `addShutdownCallback` in interface `ShutdownCallbackRegistry`
  Parameters:
    `callback` - the shutdown callback to be executed upon shutdown.
  Returns:
    a Cancellable wrapper of the provided callback or `null` if the shutdown hook is disabled and cannot be added.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1999-2015 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.