Package org.apache.logging.log4j.message
Enum MapMessageJsonFormatter
- java.lang.Object
-
- java.lang.Enum<MapMessageJsonFormatter>
-
- org.apache.logging.log4j.message.MapMessageJsonFormatter
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<MapMessageJsonFormatter>
enum MapMessageJsonFormatter extends java.lang.Enum<MapMessageJsonFormatter>
The default JSON formatter forMapMessage
s.The following types have specific handlers:
Map
Collection
(List
,Set
, etc.)Number
(BigDecimal
,Double
,Long
,Byte
, etc.)Boolean
StringBuilderFormattable
- char/boolean/byte/short/int/long/float/double/Object arrays
String
It supports nesting up to a maximum depth of 8, which is set by log4j2.mapMessage.jsonFormatter.maxDepth property.
-
-
Constructor Summary
Constructors Modifier Constructor Description private
MapMessageJsonFormatter()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static void
format(java.lang.StringBuilder sb, java.lang.Object object)
private static void
format(java.lang.StringBuilder sb, java.lang.Object object, int depth)
private static void
formatBoolean(java.lang.StringBuilder sb, boolean booleanValue)
private static void
formatBooleanArray(java.lang.StringBuilder sb, boolean[] items)
private static void
formatByteArray(java.lang.StringBuilder sb, byte[] items)
private static void
formatCharArray(java.lang.StringBuilder sb, char[] items)
private static void
formatCollection(java.lang.StringBuilder sb, java.util.Collection<java.lang.Object> items, int depth)
private static void
formatDoubleArray(java.lang.StringBuilder sb, double[] items)
private static void
formatFloatArray(java.lang.StringBuilder sb, float[] items)
private static void
formatFormattable(java.lang.StringBuilder sb, StringBuilderFormattable formattable)
private static void
formatIndexedStringMap(java.lang.StringBuilder sb, IndexedStringMap map, int depth)
private static void
formatIntArray(java.lang.StringBuilder sb, int[] items)
private static void
formatList(java.lang.StringBuilder sb, java.util.List<java.lang.Object> items, int depth)
private static void
formatLongArray(java.lang.StringBuilder sb, long[] items)
private static void
formatMap(java.lang.StringBuilder sb, java.util.Map<java.lang.Object,java.lang.Object> map, int depth)
private static void
formatNumber(java.lang.StringBuilder sb, java.lang.Number number)
private static void
formatObjectArray(java.lang.StringBuilder sb, java.lang.Object[] items, int depth)
private static void
formatShortArray(java.lang.StringBuilder sb, short[] items)
private static void
formatString(java.lang.StringBuilder sb, java.lang.Object value)
private static int
readMaxDepth()
static MapMessageJsonFormatter
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static MapMessageJsonFormatter[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Field Detail
-
MAX_DEPTH
public static final int MAX_DEPTH
-
DQUOTE
private static final char DQUOTE
- See Also:
- Constant Field Values
-
RBRACE
private static final char RBRACE
- See Also:
- Constant Field Values
-
LBRACE
private static final char LBRACE
- See Also:
- Constant Field Values
-
COMMA
private static final char COMMA
- See Also:
- Constant Field Values
-
RCURLY
private static final char RCURLY
- See Also:
- Constant Field Values
-
LCURLY
private static final char LCURLY
- See Also:
- Constant Field Values
-
COLON
private static final char COLON
- See Also:
- Constant Field Values
-
-
Method Detail
-
values
public static MapMessageJsonFormatter[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (MapMessageJsonFormatter c : MapMessageJsonFormatter.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static MapMessageJsonFormatter valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
readMaxDepth
private static int readMaxDepth()
-
format
static void format(java.lang.StringBuilder sb, java.lang.Object object)
-
format
private static void format(java.lang.StringBuilder sb, java.lang.Object object, int depth)
-
formatIndexedStringMap
private static void formatIndexedStringMap(java.lang.StringBuilder sb, IndexedStringMap map, int depth)
-
formatMap
private static void formatMap(java.lang.StringBuilder sb, java.util.Map<java.lang.Object,java.lang.Object> map, int depth)
-
formatList
private static void formatList(java.lang.StringBuilder sb, java.util.List<java.lang.Object> items, int depth)
-
formatCollection
private static void formatCollection(java.lang.StringBuilder sb, java.util.Collection<java.lang.Object> items, int depth)
-
formatNumber
private static void formatNumber(java.lang.StringBuilder sb, java.lang.Number number)
-
formatBoolean
private static void formatBoolean(java.lang.StringBuilder sb, boolean booleanValue)
-
formatFormattable
private static void formatFormattable(java.lang.StringBuilder sb, StringBuilderFormattable formattable)
-
formatCharArray
private static void formatCharArray(java.lang.StringBuilder sb, char[] items)
-
formatBooleanArray
private static void formatBooleanArray(java.lang.StringBuilder sb, boolean[] items)
-
formatByteArray
private static void formatByteArray(java.lang.StringBuilder sb, byte[] items)
-
formatShortArray
private static void formatShortArray(java.lang.StringBuilder sb, short[] items)
-
formatIntArray
private static void formatIntArray(java.lang.StringBuilder sb, int[] items)
-
formatLongArray
private static void formatLongArray(java.lang.StringBuilder sb, long[] items)
-
formatFloatArray
private static void formatFloatArray(java.lang.StringBuilder sb, float[] items)
-
formatDoubleArray
private static void formatDoubleArray(java.lang.StringBuilder sb, double[] items)
-
formatObjectArray
private static void formatObjectArray(java.lang.StringBuilder sb, java.lang.Object[] items, int depth)
-
formatString
private static void formatString(java.lang.StringBuilder sb, java.lang.Object value)
-
-