public class ch.qos.logback.classic.log4j.XMLLayout extends ch.qos.logback.core.LayoutBase<ch.qos.logback.classic.spi.ILoggingEvent>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: ch.qos.logback.classic.log4j.XMLLayout
super_class: ch.qos.logback.core.LayoutBase
{
private final int DEFAULT_SIZE;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
ConstantValue: 256
private final int UPPER_LIMIT;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
ConstantValue: 2048
private java.lang.StringBuilder buf;
descriptor: Ljava/lang/StringBuilder;
flags: (0x0002) ACC_PRIVATE
private boolean locationInfo;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean properties;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial ch.qos.logback.core.LayoutBase.<init>:()V
1: aload 0
sipush 256
putfield ch.qos.logback.classic.log4j.XMLLayout.DEFAULT_SIZE:I
2: aload 0
sipush 2048
putfield ch.qos.logback.classic.log4j.XMLLayout.UPPER_LIMIT:I
3: aload 0
new java.lang.StringBuilder
dup
sipush 256
invokespecial java.lang.StringBuilder.<init>:(I)V
putfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
4: aload 0
iconst_0
putfield ch.qos.logback.classic.log4j.XMLLayout.locationInfo:Z
5: aload 0
iconst_0
putfield ch.qos.logback.classic.log4j.XMLLayout.properties:Z
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lch/qos/logback/classic/log4j/XMLLayout;
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial ch.qos.logback.core.LayoutBase.start:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lch/qos/logback/classic/log4j/XMLLayout;
public void setLocationInfo(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield ch.qos.logback.classic.log4j.XMLLayout.locationInfo:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lch/qos/logback/classic/log4j/XMLLayout;
0 2 1 flag Z
MethodParameters:
Name Flags
flag
public boolean getLocationInfo();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.locationInfo:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/log4j/XMLLayout;
public void setProperties(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield ch.qos.logback.classic.log4j.XMLLayout.properties:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lch/qos/logback/classic/log4j/XMLLayout;
0 2 1 flag Z
MethodParameters:
Name Flags
flag final
public boolean getProperties();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.properties:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/log4j/XMLLayout;
public java.lang.String doLayout(ch.qos.logback.classic.spi.ILoggingEvent);
descriptor: (Lch/qos/logback/classic/spi/ILoggingEvent;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.capacity:()I
sipush 2048
if_icmple 3
1: aload 0
new java.lang.StringBuilder
dup
sipush 256
invokespecial java.lang.StringBuilder.<init>:(I)V
putfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
iconst_0
invokevirtual java.lang.StringBuilder.setLength:(I)V
4: StackMap locals:
StackMap stack:
aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "<log4j:event logger=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getLoggerName:()Ljava/lang/String;
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\"\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
7: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " timestamp=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getTimeStamp:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
pop
9: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\" level=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getLevel:()Lch/qos/logback/classic/Level;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
11: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\" thread=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getThreadName:()Ljava/lang/String;
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
13: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\">\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " <log4j:message>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getFormattedMessage:()Ljava/lang/String;
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
16: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "</log4j:message>\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
17: aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getThrowableProxy:()Lch/qos/logback/classic/spi/IThrowableProxy;
astore 2
start local 2 18: aload 2
ifnull 29
19: aload 2
invokeinterface ch.qos.logback.classic.spi.IThrowableProxy.getStackTraceElementProxyArray:()[Lch/qos/logback/classic/spi/StackTraceElementProxy;
astore 3
start local 3 20: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " <log4j:throwable><![CDATA["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 27
StackMap locals: ch.qos.logback.classic.log4j.XMLLayout ch.qos.logback.classic.spi.ILoggingEvent ch.qos.logback.classic.spi.IThrowableProxy ch.qos.logback.classic.spi.StackTraceElementProxy[] top int int ch.qos.logback.classic.spi.StackTraceElementProxy[]
StackMap stack:
22: aload 7
iload 5
aaload
astore 4
start local 4 23: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
bipush 9
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
24: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 4
invokevirtual ch.qos.logback.classic.spi.StackTraceElementProxy.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
25: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 26: iinc 5 1
StackMap locals:
StackMap stack:
27: iload 5
iload 6
if_icmplt 22
28: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "]]></log4j:throwable>\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 29: StackMap locals: ch.qos.logback.classic.log4j.XMLLayout ch.qos.logback.classic.spi.ILoggingEvent ch.qos.logback.classic.spi.IThrowableProxy
StackMap stack:
aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.locationInfo:Z
ifeq 43
30: aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getCallerData:()[Ljava/lang/StackTraceElement;
astore 3
start local 3 31: aload 3
ifnull 43
aload 3
arraylength
ifle 43
32: aload 3
iconst_0
aaload
astore 4
start local 4 33: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " <log4j:locationInfo class=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
34: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StackTraceElement.getClassName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
35: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\"\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
36: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " method=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
37: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StackTraceElement.getMethodName:()Ljava/lang/String;
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
38: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\" file=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
39: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StackTraceElement.getFileName:()Ljava/lang/String;
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
40: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\" line=\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
41: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StackTraceElement.getLineNumber:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
42: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\"/>\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 end local 3 43: StackMap locals:
StackMap stack:
aload 0
invokevirtual ch.qos.logback.classic.log4j.XMLLayout.getProperties:()Z
ifeq 56
44: aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getMDCPropertyMap:()Ljava/util/Map;
astore 3
start local 3 45: aload 3
ifnull 56
aload 3
invokeinterface java.util.Map.size:()I
ifeq 56
46: aload 3
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
astore 4
start local 4 47: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " <log4j:properties>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
48: aload 4
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 54
StackMap locals: ch.qos.logback.classic.log4j.XMLLayout ch.qos.logback.classic.spi.ILoggingEvent ch.qos.logback.classic.spi.IThrowableProxy java.util.Map java.util.Set top java.util.Iterator
StackMap stack:
49: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 5
start local 5 50: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\r\n <log4j:data"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
51: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
new java.lang.StringBuilder
dup
ldc " name='"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
52: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
new java.lang.StringBuilder
dup
ldc " value='"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokestatic ch.qos.logback.core.helpers.Transform.escapeTags:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
53: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc " />"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 5 54: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 49
55: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\r\n </log4j:properties>"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 4 end local 3 56: StackMap locals: ch.qos.logback.classic.log4j.XMLLayout ch.qos.logback.classic.spi.ILoggingEvent ch.qos.logback.classic.spi.IThrowableProxy
StackMap stack:
aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
ldc "\r\n</log4j:event>\r\n\r\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
57: aload 0
getfield ch.qos.logback.classic.log4j.XMLLayout.buf:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 58 0 this Lch/qos/logback/classic/log4j/XMLLayout;
0 58 1 event Lch/qos/logback/classic/spi/ILoggingEvent;
18 58 2 tp Lch/qos/logback/classic/spi/IThrowableProxy;
20 29 3 stepArray [Lch/qos/logback/classic/spi/StackTraceElementProxy;
23 26 4 step Lch/qos/logback/classic/spi/StackTraceElementProxy;
31 43 3 callerDataArray [Ljava/lang/StackTraceElement;
33 43 4 immediateCallerData Ljava/lang/StackTraceElement;
45 56 3 propertyMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
47 56 4 entrySet Ljava/util/Set<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;>;
50 54 5 entry Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
MethodParameters:
Name Flags
event
public java.lang.String getContentType();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "text/xml"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/log4j/XMLLayout;
public java.lang.String doLayout(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast ch.qos.logback.classic.spi.ILoggingEvent
invokevirtual ch.qos.logback.classic.log4j.XMLLayout.doLayout:(Lch/qos/logback/classic/spi/ILoggingEvent;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lch/qos/logback/core/LayoutBase<Lch/qos/logback/classic/spi/ILoggingEvent;>;
SourceFile: "XMLLayout.java"
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map