public class ch.qos.logback.classic.pattern.CallerDataConverter extends ch.qos.logback.classic.pattern.ClassicConverter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: ch.qos.logback.classic.pattern.CallerDataConverter
super_class: ch.qos.logback.classic.pattern.ClassicConverter
{
public static final java.lang.String DEFAULT_CALLER_LINE_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "Caller+"
public static final java.lang.String DEFAULT_RANGE_DELIMITER;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: ".."
private int depthStart;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int depthEnd;
descriptor: I
flags: (0x0002) ACC_PRIVATE
java.util.List<ch.qos.logback.core.boolex.EventEvaluator<ch.qos.logback.classic.spi.ILoggingEvent>> evaluatorList;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Lch/qos/logback/core/boolex/EventEvaluator<Lch/qos/logback/classic/spi/ILoggingEvent;>;>;
final int MAX_ERROR_COUNT;
descriptor: I
flags: (0x0010) ACC_FINAL
ConstantValue: 4
int errorCount;
descriptor: I
flags: (0x0000)
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial ch.qos.logback.classic.pattern.ClassicConverter.<init>:()V
1: aload 0
iconst_0
putfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
2: aload 0
iconst_5
putfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
3: aload 0
aconst_null
putfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
4: aload 0
iconst_4
putfield ch.qos.logback.classic.pattern.CallerDataConverter.MAX_ERROR_COUNT:I
5: aload 0
iconst_0
putfield ch.qos.logback.classic.pattern.CallerDataConverter.errorCount:I
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getFirstOption:()Ljava/lang/String;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: return
3: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 1
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.isRange:(Ljava/lang/String;)Z
ifeq 12
4: aload 0
aload 1
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.splitRange:(Ljava/lang/String;)[Ljava/lang/String;
astore 2
start local 2 5: aload 2
arraylength
iconst_2
if_icmpne 10
6: aload 0
aload 2
iconst_0
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
putfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
7: aload 0
aload 2
iconst_1
aaload
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
putfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
8: aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.checkRange:()V
9: goto 16
10: StackMap locals: java.lang.String[]
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Failed to parse depth option as range ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
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 ch.qos.logback.classic.pattern.CallerDataConverter.addError:(Ljava/lang/String;)V
end local 2 11: goto 16
12: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
putfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
13: goto 16
StackMap locals:
StackMap stack: java.lang.NumberFormatException
14: astore 2
start local 2 15: aload 0
new java.lang.StringBuilder
dup
ldc "Failed to parse depth option ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
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;
aload 2
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addError:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 2 16: StackMap locals:
StackMap stack:
aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getOptionList:()Ljava/util/List;
astore 2
start local 2 17: aload 2
ifnull 30
aload 2
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 30
18: aload 2
invokeinterface java.util.List.size:()I
istore 3
start local 3 19: iconst_1
istore 4
start local 4 20: goto 29
21: StackMap locals: java.util.List int int
StackMap stack:
aload 2
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 22: aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getContext:()Lch/qos/logback/core/Context;
astore 6
start local 6 23: aload 6
ifnull 28
24: aload 6
ldc "EVALUATOR_MAP"
invokeinterface ch.qos.logback.core.Context.getObject:(Ljava/lang/String;)Ljava/lang/Object;
checkcast java.util.Map
astore 7
start local 7 25: aload 7
aload 5
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast ch.qos.logback.core.boolex.EventEvaluator
astore 8
start local 8 26: aload 8
ifnull 28
27: aload 0
aload 8
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addEvaluator:(Lch/qos/logback/core/boolex/EventEvaluator;)V
end local 8 end local 7 end local 6 end local 5 28: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
29: iload 4
iload 3
if_icmplt 21
end local 4 end local 3 30: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
1 31 1 depthStr Ljava/lang/String;
5 11 2 numbers [Ljava/lang/String;
15 16 2 nfe Ljava/lang/NumberFormatException;
17 31 2 optionList Ljava/util/List<Ljava/lang/String;>;
19 30 3 optionListSize I
20 30 4 i I
22 28 5 evaluatorStr Ljava/lang/String;
23 28 6 context Lch/qos/logback/core/Context;
25 28 7 evaluatorMap Ljava/util/Map<Ljava/lang/String;Lch/qos/logback/core/boolex/EventEvaluator<*>;>;
26 28 8 ee Lch/qos/logback/core/boolex/EventEvaluator<Lch/qos/logback/classic/spi/ILoggingEvent;>;
Exception table:
from to target type
3 13 14 Class java.lang.NumberFormatException
private boolean isRange(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getDefaultRangeDelimiter:()Ljava/lang/String;
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
0 1 1 depthStr Ljava/lang/String;
MethodParameters:
Name Flags
depthStr
private java.lang.String[] splitRange(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getDefaultRangeDelimiter:()Ljava/lang/String;
invokestatic java.util.regex.Pattern.quote:(Ljava/lang/String;)Ljava/lang/String;
iconst_2
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
0 1 1 depthStr Ljava/lang/String;
MethodParameters:
Name Flags
depthStr
private void checkRange();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
iflt 1
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
ifge 3
1: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Invalid depthStart/depthEnd range ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "] (negative values are not allowed)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addError:(Ljava/lang/String;)V
2: goto 5
StackMap locals:
StackMap stack:
3: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
if_icmplt 5
4: aload 0
new java.lang.StringBuilder
dup
ldc "Invalid depthEnd range ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "] (start greater or equal to end)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addError:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
private void addEvaluator(ch.qos.logback.core.boolex.EventEvaluator<ch.qos.logback.classic.spi.ILoggingEvent>);
descriptor: (Lch/qos/logback/core/boolex/EventEvaluator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
ifnonnull 2
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
0 4 1 ee Lch/qos/logback/core/boolex/EventEvaluator<Lch/qos/logback/classic/spi/ILoggingEvent;>;
Signature: (Lch/qos/logback/core/boolex/EventEvaluator<Lch/qos/logback/classic/spi/ILoggingEvent;>;)V
MethodParameters:
Name Flags
ee
public java.lang.String convert(ch.qos.logback.classic.spi.ILoggingEvent);
descriptor: (Lch/qos/logback/classic/spi/ILoggingEvent;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 2
start local 2 1: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
ifnull 24
2: iconst_0
istore 3
start local 3 3: iconst_0
istore 4
start local 4 4: goto 21
5: StackMap locals: java.lang.StringBuilder int int
StackMap stack:
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
iload 4
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast ch.qos.logback.core.boolex.EventEvaluator
astore 5
start local 5 6: aload 5
aload 1
invokeinterface ch.qos.logback.core.boolex.EventEvaluator.evaluate:(Ljava/lang/Object;)Z
ifeq 20
7: iconst_1
istore 3
8: goto 22
9: StackMap locals: ch.qos.logback.classic.pattern.CallerDataConverter ch.qos.logback.classic.spi.ILoggingEvent java.lang.StringBuilder int int ch.qos.logback.core.boolex.EventEvaluator
StackMap stack: ch.qos.logback.core.boolex.EvaluationException
astore 6
start local 6 10: aload 0
dup
getfield ch.qos.logback.classic.pattern.CallerDataConverter.errorCount:I
iconst_1
iadd
putfield ch.qos.logback.classic.pattern.CallerDataConverter.errorCount:I
11: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.errorCount:I
iconst_4
if_icmpge 14
12: aload 0
new java.lang.StringBuilder
dup
ldc "Exception thrown for evaluator named ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokeinterface ch.qos.logback.core.boolex.EventEvaluator.getName:()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;
aload 6
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addError:(Ljava/lang/String;Ljava/lang/Throwable;)V
13: goto 20
StackMap locals: ch.qos.logback.core.boolex.EvaluationException
StackMap stack:
14: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.errorCount:I
iconst_4
if_icmpne 20
15: new ch.qos.logback.core.status.ErrorStatus
dup
new java.lang.StringBuilder
dup
ldc "Exception thrown for evaluator named ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokeinterface ch.qos.logback.core.boolex.EventEvaluator.getName:()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;
aload 0
aload 6
invokespecial ch.qos.logback.core.status.ErrorStatus.<init>:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Throwable;)V
astore 7
start local 7 16: aload 7
new ch.qos.logback.core.status.ErrorStatus
dup
ldc "This was the last warning about this evaluator's errors.We don't want the StatusManager to get flooded."
17: aload 0
invokespecial ch.qos.logback.core.status.ErrorStatus.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
18: invokevirtual ch.qos.logback.core.status.ErrorStatus.add:(Lch/qos/logback/core/status/Status;)V
19: aload 0
aload 7
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.addStatus:(Lch/qos/logback/core/status/Status;)V
end local 7 end local 6 end local 5 20: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
21: iload 4
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.evaluatorList:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 5
end local 4 22: StackMap locals:
StackMap stack:
iload 3
ifne 24
23: ldc ""
areturn
end local 3 24: StackMap locals:
StackMap stack:
aload 1
invokeinterface ch.qos.logback.classic.spi.ILoggingEvent.getCallerData:()[Ljava/lang/StackTraceElement;
astore 3
start local 3 25: aload 3
ifnull 39
aload 3
arraylength
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
if_icmple 39
26: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
aload 3
arraylength
if_icmpge 27
aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthEnd:I
goto 28
StackMap locals: java.lang.StackTraceElement[]
StackMap stack:
27: aload 3
arraylength
StackMap locals:
StackMap stack: int
28: istore 4
start local 4 29: aload 0
getfield ch.qos.logback.classic.pattern.CallerDataConverter.depthStart:I
istore 5
start local 5 30: goto 37
31: StackMap locals: int int
StackMap stack:
aload 2
aload 0
invokevirtual ch.qos.logback.classic.pattern.CallerDataConverter.getCallerLinePrefix:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
32: aload 2
iload 5
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
33: aload 2
ldc "\t at "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
34: aload 2
aload 3
iload 5
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
pop
35: aload 2
getstatic ch.qos.logback.core.CoreConstants.LINE_SEPARATOR:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
36: iinc 5 1
StackMap locals:
StackMap stack:
37: iload 5
iload 4
if_icmplt 31
end local 5 38: aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 39: StackMap locals:
StackMap stack:
getstatic ch.qos.logback.classic.spi.CallerData.CALLER_DATA_NA:Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
0 40 1 le Lch/qos/logback/classic/spi/ILoggingEvent;
1 40 2 buf Ljava/lang/StringBuilder;
3 24 3 printCallerData Z
4 22 4 i I
6 20 5 ee Lch/qos/logback/core/boolex/EventEvaluator<Lch/qos/logback/classic/spi/ILoggingEvent;>;
10 20 6 eex Lch/qos/logback/core/boolex/EvaluationException;
16 20 7 errorStatus Lch/qos/logback/core/status/ErrorStatus;
25 40 3 cda [Ljava/lang/StackTraceElement;
29 39 4 limit I
30 38 5 i I
Exception table:
from to target type
6 8 9 Class ch.qos.logback.core.boolex.EvaluationException
MethodParameters:
Name Flags
le
protected java.lang.String getCallerLinePrefix();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "Caller+"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
protected java.lang.String getDefaultRangeDelimiter();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc ".."
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/classic/pattern/CallerDataConverter;
public java.lang.String convert(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.pattern.CallerDataConverter.convert:(Lch/qos/logback/classic/spi/ILoggingEvent;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "CallerDataConverter.java"