public final class org.apache.logging.log4j.core.pattern.MdcPatternConverter extends org.apache.logging.log4j.core.pattern.LogEventPatternConverter
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.logging.log4j.core.pattern.MdcPatternConverter
super_class: org.apache.logging.log4j.core.pattern.LogEventPatternConverter
{
private final java.lang.String key;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String[] keys;
descriptor: [Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean full;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final org.apache.logging.log4j.util.TriConsumer<java.lang.String, java.lang.Object, java.lang.StringBuilder> WRITE_KEY_VALUES_INTO;
descriptor: Lorg/apache/logging/log4j/util/TriConsumer;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/apache/logging/log4j/util/TriConsumer<Ljava/lang/String;Ljava/lang/Object;Ljava/lang/StringBuilder;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.apache.logging.log4j.core.pattern.MdcPatternConverter$1
dup
invokespecial org.apache.logging.log4j.core.pattern.MdcPatternConverter$1.<init>:()V
putstatic org.apache.logging.log4j.core.pattern.MdcPatternConverter.WRITE_KEY_VALUES_INTO:Lorg/apache/logging/log4j/util/TriConsumer;
1: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ifnull 1
aload 1
arraylength
ifle 1
new java.lang.StringBuilder
dup
ldc "MDC{"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
iconst_0
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 2
StackMap locals:
StackMap stack: uninitialized-this
1: ldc "MDC"
StackMap locals: uninitialized-this java.lang.String[]
StackMap stack: uninitialized-this java.lang.String
2: ldc "mdc"
invokespecial org.apache.logging.log4j.core.pattern.LogEventPatternConverter.<init>:(Ljava/lang/String;Ljava/lang/String;)V
3: aload 1
ifnull 17
aload 1
arraylength
ifle 17
4: aload 0
iconst_0
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.full:Z
5: aload 1
iconst_0
aaload
bipush 44
invokevirtual java.lang.String.indexOf:(I)I
ifle 14
6: aload 0
aload 1
iconst_0
aaload
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
7: iconst_0
istore 2
start local 2 8: goto 11
9: StackMap locals: org.apache.logging.log4j.core.pattern.MdcPatternConverter java.lang.String[] int
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
iload 2
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
iload 2
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
aastore
10: iinc 2 1
StackMap locals:
StackMap stack:
11: iload 2
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
arraylength
if_icmplt 9
end local 2 12: aload 0
aconst_null
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.key:Ljava/lang/String;
13: goto 20
14: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
15: aload 0
aload 1
iconst_0
aaload
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.key:Ljava/lang/String;
16: goto 20
17: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.full:Z
18: aload 0
aconst_null
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.key:Ljava/lang/String;
19: aload 0
aconst_null
putfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
20: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/logging/log4j/core/pattern/MdcPatternConverter;
0 21 1 options [Ljava/lang/String;
8 12 2 i I
MethodParameters:
Name Flags
options final
public static org.apache.logging.log4j.core.pattern.MdcPatternConverter newInstance(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Lorg/apache/logging/log4j/core/pattern/MdcPatternConverter;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.apache.logging.log4j.core.pattern.MdcPatternConverter
dup
aload 0
invokespecial org.apache.logging.log4j.core.pattern.MdcPatternConverter.<init>:([Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 options [Ljava/lang/String;
MethodParameters:
Name Flags
options final
public void format(org.apache.logging.log4j.core.LogEvent, java.lang.StringBuilder);
descriptor: (Lorg/apache/logging/log4j/core/LogEvent;Ljava/lang/StringBuilder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface org.apache.logging.log4j.core.LogEvent.getContextData:()Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
astore 3
start local 3 1: aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.full:Z
ifeq 7
2: aload 3
ifnull 3
aload 3
invokeinterface org.apache.logging.log4j.util.ReadOnlyStringMap.size:()I
ifne 5
3: StackMap locals: org.apache.logging.log4j.util.ReadOnlyStringMap
StackMap stack:
aload 2
ldc "{}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: return
5: StackMap locals:
StackMap stack:
aload 3
aload 2
invokestatic org.apache.logging.log4j.core.pattern.MdcPatternConverter.appendFully:(Lorg/apache/logging/log4j/util/ReadOnlyStringMap;Ljava/lang/StringBuilder;)V
6: goto 17
7: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
ifnull 13
8: aload 3
ifnull 9
aload 3
invokeinterface org.apache.logging.log4j.util.ReadOnlyStringMap.size:()I
ifne 11
9: StackMap locals:
StackMap stack:
aload 2
ldc "{}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: return
11: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.keys:[Ljava/lang/String;
aload 3
aload 2
invokestatic org.apache.logging.log4j.core.pattern.MdcPatternConverter.appendSelectedKeys:([Ljava/lang/String;Lorg/apache/logging/log4j/util/ReadOnlyStringMap;Ljava/lang/StringBuilder;)V
12: goto 17
StackMap locals:
StackMap stack:
13: aload 3
ifnull 17
14: aload 3
aload 0
getfield org.apache.logging.log4j.core.pattern.MdcPatternConverter.key:Ljava/lang/String;
invokeinterface org.apache.logging.log4j.util.ReadOnlyStringMap.getValue:(Ljava/lang/String;)Ljava/lang/Object;
astore 4
start local 4 15: aload 4
ifnull 17
16: aload 2
aload 4
invokestatic org.apache.logging.log4j.util.StringBuilders.appendValue:(Ljava/lang/StringBuilder;Ljava/lang/Object;)V
end local 4 17: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/apache/logging/log4j/core/pattern/MdcPatternConverter;
0 18 1 event Lorg/apache/logging/log4j/core/LogEvent;
0 18 2 toAppendTo Ljava/lang/StringBuilder;
1 18 3 contextData Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
15 17 4 value Ljava/lang/Object;
MethodParameters:
Name Flags
event final
toAppendTo final
private static void appendFully(org.apache.logging.log4j.util.ReadOnlyStringMap, java.lang.StringBuilder);
descriptor: (Lorg/apache/logging/log4j/util/ReadOnlyStringMap;Ljava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "{"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
1: aload 1
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
getstatic org.apache.logging.log4j.core.pattern.MdcPatternConverter.WRITE_KEY_VALUES_INTO:Lorg/apache/logging/log4j/util/TriConsumer;
aload 1
invokeinterface org.apache.logging.log4j.util.ReadOnlyStringMap.forEach:(Lorg/apache/logging/log4j/util/TriConsumer;Ljava/lang/Object;)V
3: aload 1
invokevirtual java.lang.StringBuilder.length:()I
istore 3
start local 3 4: iload 3
iload 2
if_icmple 8
5: aload 1
iload 3
iconst_2
isub
bipush 125
invokevirtual java.lang.StringBuilder.setCharAt:(IC)V
6: aload 1
iload 3
iconst_1
isub
invokevirtual java.lang.StringBuilder.deleteCharAt:(I)Ljava/lang/StringBuilder;
pop
7: goto 9
8: StackMap locals: int int
StackMap stack:
aload 1
bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 contextData Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
0 10 1 toAppendTo Ljava/lang/StringBuilder;
2 10 2 start I
4 10 3 end I
MethodParameters:
Name Flags
contextData final
toAppendTo final
private static void appendSelectedKeys(java.lang.String[], org.apache.logging.log4j.util.ReadOnlyStringMap, java.lang.StringBuilder);
descriptor: ([Ljava/lang/String;Lorg/apache/logging/log4j/util/ReadOnlyStringMap;Ljava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual java.lang.StringBuilder.length:()I
istore 3
start local 3 1: aload 2
bipush 123
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: iconst_0
istore 4
start local 4 3: goto 12
4: StackMap locals: int int
StackMap stack:
aload 0
iload 4
aaload
astore 5
start local 5 5: aload 1
aload 5
invokeinterface org.apache.logging.log4j.util.ReadOnlyStringMap.getValue:(Ljava/lang/String;)Ljava/lang/Object;
astore 6
start local 6 6: aload 6
ifnull 11
7: aload 2
invokevirtual java.lang.StringBuilder.length:()I
iload 3
isub
iconst_1
if_icmple 9
8: aload 2
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: StackMap locals: java.lang.String java.lang.Object
StackMap stack:
aload 2
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 61
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
10: aload 2
aload 6
invokestatic org.apache.logging.log4j.util.StringBuilders.appendValue:(Ljava/lang/StringBuilder;Ljava/lang/Object;)V
end local 6 end local 5 11: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
aload 0
arraylength
if_icmplt 4
end local 4 13: aload 2
bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 keys [Ljava/lang/String;
0 15 1 contextData Lorg/apache/logging/log4j/util/ReadOnlyStringMap;
0 15 2 sb Ljava/lang/StringBuilder;
1 15 3 start I
3 13 4 i I
5 11 5 theKey Ljava/lang/String;
6 11 6 value Ljava/lang/Object;
MethodParameters:
Name Flags
keys final
contextData final
sb final
}
SourceFile: "MdcPatternConverter.java"
NestMembers:
org.apache.logging.log4j.core.pattern.MdcPatternConverter$1
InnerClasses:
org.apache.logging.log4j.core.pattern.MdcPatternConverter$1
RuntimeVisibleAnnotations:
org.apache.logging.log4j.core.config.plugins.Plugin(name = "MdcPatternConverter", category = "Converter")
org.apache.logging.log4j.core.pattern.ConverterKeys(value = {"X", "mdc", "MDC"})
RuntimeInvisibleAnnotations:
org.apache.logging.log4j.util.PerformanceSensitive(value = {"allocation"})