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 forMapMessages.The following types have specific handlers:
MapCollection(List,Set, etc.)Number(BigDecimal,Double,Long,Byte, etc.)BooleanStringBuilderFormattable- 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 privateMapMessageJsonFormatter()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static voidformat(java.lang.StringBuilder sb, java.lang.Object object)private static voidformat(java.lang.StringBuilder sb, java.lang.Object object, int depth)private static voidformatBoolean(java.lang.StringBuilder sb, boolean booleanValue)private static voidformatBooleanArray(java.lang.StringBuilder sb, boolean[] items)private static voidformatByteArray(java.lang.StringBuilder sb, byte[] items)private static voidformatCharArray(java.lang.StringBuilder sb, char[] items)private static voidformatCollection(java.lang.StringBuilder sb, java.util.Collection<java.lang.Object> items, int depth)private static voidformatDoubleArray(java.lang.StringBuilder sb, double[] items)private static voidformatFloatArray(java.lang.StringBuilder sb, float[] items)private static voidformatFormattable(java.lang.StringBuilder sb, StringBuilderFormattable formattable)private static voidformatIndexedStringMap(java.lang.StringBuilder sb, IndexedStringMap map, int depth)private static voidformatIntArray(java.lang.StringBuilder sb, int[] items)private static voidformatList(java.lang.StringBuilder sb, java.util.List<java.lang.Object> items, int depth)private static voidformatLongArray(java.lang.StringBuilder sb, long[] items)private static voidformatMap(java.lang.StringBuilder sb, java.util.Map<java.lang.Object,java.lang.Object> map, int depth)private static voidformatNumber(java.lang.StringBuilder sb, java.lang.Number number)private static voidformatObjectArray(java.lang.StringBuilder sb, java.lang.Object[] items, int depth)private static voidformatShortArray(java.lang.StringBuilder sb, short[] items)private static voidformatString(java.lang.StringBuilder sb, java.lang.Object value)private static intreadMaxDepth()static MapMessageJsonFormattervalueOf(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)
-
-