public class ContextDataFactory
extends java.lang.Object
By default returns SortedArrayStringMap
objects. Can be configured by setting system property
"log4j2.ContextData"
to the fully qualified class name of a class implementing the
StringMap
interface. The class must have a public default constructor, and if possible should also have a
public constructor that takes a single int
argument for the initial capacity.
LogEvent.getContextData()
,
ContextDataInjector
,
SortedArrayStringMap
Modifier and Type | Field and Description |
---|---|
private static java.lang.Class<? extends StringMap> |
CACHED_CLASS |
private static java.lang.String |
CLASS_NAME |
private static java.lang.invoke.MethodHandle |
DEFAULT_CONSTRUCTOR |
private static StringMap |
EMPTY_STRING_MAP |
private static java.lang.invoke.MethodHandle |
INITIAL_CAPACITY_CONSTRUCTOR |
private static java.lang.invoke.MethodHandles.Lookup |
LOOKUP |
Constructor and Description |
---|
ContextDataFactory() |
Modifier and Type | Method and Description |
---|---|
private static java.lang.Class<? extends StringMap> |
createCachedClass(java.lang.String className) |
static StringMap |
createContextData() |
static StringMap |
createContextData(int initialCapacity) |
private static java.lang.invoke.MethodHandle |
createDefaultConstructor(java.lang.Class<? extends StringMap> cachedClass) |
private static java.lang.invoke.MethodHandle |
createInitialCapacityConstructor(java.lang.Class<? extends StringMap> cachedClass) |
static StringMap |
emptyFrozenContextData()
An empty pre-frozen StringMap.
|
private static final java.lang.invoke.MethodHandles.Lookup LOOKUP
private static final java.lang.String CLASS_NAME
private static final java.lang.Class<? extends StringMap> CACHED_CLASS
private static final java.lang.invoke.MethodHandle DEFAULT_CONSTRUCTOR
private static final java.lang.invoke.MethodHandle INITIAL_CAPACITY_CONSTRUCTOR
private static final StringMap EMPTY_STRING_MAP
private static java.lang.Class<? extends StringMap> createCachedClass(java.lang.String className)
private static java.lang.invoke.MethodHandle createDefaultConstructor(java.lang.Class<? extends StringMap> cachedClass)
private static java.lang.invoke.MethodHandle createInitialCapacityConstructor(java.lang.Class<? extends StringMap> cachedClass)
public static StringMap createContextData()
public static StringMap createContextData(int initialCapacity)
public static StringMap emptyFrozenContextData()