org.apache.logging.log4j.core.util
Interface ShutdownCallbackRegistry

All Known Implementing Classes:
DefaultShutdownCallbackRegistry, Log4jContextFactory

public interface ShutdownCallbackRegistry

Registry used for Runnable shutdown callback instances. Due to differing requirements of how late in the JVM lifecycle Log4j should be shut down, this interface is provided for customizing how to register shutdown hook callbacks. Implementations may optionally implement LifeCycle.

Since:
2.1

Field Summary
static String SHUTDOWN_CALLBACK_REGISTRY
          System property to set to choose the ShutdownCallbackRegistry.
static String SHUTDOWN_HOOK_ENABLED
          System property to set to override the global ability to register shutdown hooks.
static org.apache.logging.log4j.Marker SHUTDOWN_HOOK_MARKER
          Shared Marker to indicate log messages corresponding to shutdown hooks.
 
Method Summary
 Cancellable addShutdownCallback(Runnable callback)
          Adds a Runnable shutdown callback to this class.
 

Field Detail

SHUTDOWN_CALLBACK_REGISTRY

static final String SHUTDOWN_CALLBACK_REGISTRY
System property to set to choose the ShutdownCallbackRegistry.

See Also:
Constant Field Values

SHUTDOWN_HOOK_ENABLED

static final String SHUTDOWN_HOOK_ENABLED
System property to set to override the global ability to register shutdown hooks.

See Also:
Constant Field Values

SHUTDOWN_HOOK_MARKER

static final org.apache.logging.log4j.Marker SHUTDOWN_HOOK_MARKER
Shared Marker to indicate log messages corresponding to shutdown hooks.

Method Detail

addShutdownCallback

Cancellable addShutdownCallback(Runnable callback)
Adds a Runnable shutdown callback to this class.

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.
Since:
2.1


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.