public class ch.qos.logback.classic.joran.action.ConfigurationAction extends ch.qos.logback.core.joran.action.Action
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: ch.qos.logback.classic.joran.action.ConfigurationAction
super_class: ch.qos.logback.core.joran.action.Action
{
static final java.lang.String INTERNAL_DEBUG_ATTR;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "debug"
static final java.lang.String PACKAGING_DATA_ATTR;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "packagingData"
static final java.lang.String SCAN_ATTR;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "scan"
static final java.lang.String SCAN_PERIOD_ATTR;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "scanPeriod"
static final java.lang.String DEBUG_SYSTEM_PROPERTY_KEY;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "logback.debug"
long threshold;
descriptor: J
flags: (0x0000)
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial ch.qos.logback.core.joran.action.Action.<init>:()V
1: aload 0
lconst_0
putfield ch.qos.logback.classic.joran.action.ConfigurationAction.threshold:J
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
public void begin(ch.qos.logback.core.joran.spi.InterpretationContext, java.lang.String, org.xml.sax.Attributes);
descriptor: (Lch/qos/logback/core/joran/spi/InterpretationContext;Ljava/lang/String;Lorg/xml/sax/Attributes;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokestatic java.lang.System.currentTimeMillis:()J
putfield ch.qos.logback.classic.joran.action.ConfigurationAction.threshold:J
1: aload 0
ldc "logback.debug"
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.getSystemProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 4
ifnonnull 4
3: aload 1
aload 3
ldc "debug"
invokeinterface org.xml.sax.Attributes.getValue:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.subst:(Ljava/lang/String;)Ljava/lang/String;
astore 4
4: StackMap locals: java.lang.String
StackMap stack:
aload 4
invokestatic ch.qos.logback.core.util.OptionHelper.isEmpty:(Ljava/lang/String;)Z
ifne 5
aload 4
ldc "false"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 5
aload 4
ldc "null"
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 7
5: StackMap locals:
StackMap stack:
aload 0
ldc "debug attribute not set"
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.addInfo:(Ljava/lang/String;)V
6: goto 8
7: StackMap locals:
StackMap stack:
aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
new ch.qos.logback.core.status.OnConsoleStatusListener
dup
invokespecial ch.qos.logback.core.status.OnConsoleStatusListener.<init>:()V
invokestatic ch.qos.logback.core.util.StatusListenerConfigHelper.addOnConsoleListenerInstance:(Lch/qos/logback/core/Context;Lch/qos/logback/core/status/OnConsoleStatusListener;)V
8: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.processScanAttrib:(Lch/qos/logback/core/joran/spi/InterpretationContext;Lorg/xml/sax/Attributes;)V
9: aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
checkcast ch.qos.logback.classic.LoggerContext
astore 5
start local 5 10: aload 1
aload 3
ldc "packagingData"
invokeinterface org.xml.sax.Attributes.getValue:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.subst:(Ljava/lang/String;)Ljava/lang/String;
iconst_0
invokestatic ch.qos.logback.core.util.OptionHelper.toBoolean:(Ljava/lang/String;Z)Z
istore 6
start local 6 11: aload 5
iload 6
invokevirtual ch.qos.logback.classic.LoggerContext.setPackagingDataEnabled:(Z)V
12: invokestatic ch.qos.logback.classic.util.EnvUtil.isGroovyAvailable:()Z
ifeq 15
13: new ch.qos.logback.core.util.ContextUtil
dup
aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
invokespecial ch.qos.logback.core.util.ContextUtil.<init>:(Lch/qos/logback/core/Context;)V
astore 7
start local 7 14: aload 7
aload 5
invokevirtual ch.qos.logback.classic.LoggerContext.getFrameworkPackages:()Ljava/util/List;
invokevirtual ch.qos.logback.core.util.ContextUtil.addGroovyPackages:(Ljava/util/List;)V
end local 7 15: StackMap locals: ch.qos.logback.classic.LoggerContext int
StackMap stack:
aload 1
aload 0
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.getContext:()Lch/qos/logback/core/Context;
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.pushObject:(Ljava/lang/Object;)V
16: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
0 17 1 ic Lch/qos/logback/core/joran/spi/InterpretationContext;
0 17 2 name Ljava/lang/String;
0 17 3 attributes Lorg/xml/sax/Attributes;
2 17 4 debugAttrib Ljava/lang/String;
10 17 5 lc Lch/qos/logback/classic/LoggerContext;
11 17 6 packagingData Z
14 15 7 contextUtil Lch/qos/logback/core/util/ContextUtil;
MethodParameters:
Name Flags
ic
name
attributes
java.lang.String getSystemProperty(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.SecurityException
pop
3: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
0 4 1 name Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class java.lang.SecurityException
MethodParameters:
Name Flags
name
void processScanAttrib(ch.qos.logback.core.joran.spi.InterpretationContext, org.xml.sax.Attributes);
descriptor: (Lch/qos/logback/core/joran/spi/InterpretationContext;Lorg/xml/sax/Attributes;)V
flags: (0x0000)
Code:
stack=7, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
ldc "scan"
invokeinterface org.xml.sax.Attributes.getValue:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.subst:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 3
invokestatic ch.qos.logback.core.util.OptionHelper.isEmpty:(Ljava/lang/String;)Z
ifne 20
ldc "false"
aload 3
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifne 20
2: aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
invokeinterface ch.qos.logback.core.Context.getScheduledExecutorService:()Ljava/util/concurrent/ScheduledExecutorService;
astore 4
start local 4 3: aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
invokestatic ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.getMainWatchURL:(Lch/qos/logback/core/Context;)Ljava/net/URL;
astore 5
start local 5 4: aload 5
ifnonnull 7
5: aload 0
ldc "Due to missing top level configuration file, reconfiguration on change (configuration file scanning) cannot be done."
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.addWarn:(Ljava/lang/String;)V
6: return
7: StackMap locals: java.lang.String java.util.concurrent.ScheduledExecutorService java.net.URL
StackMap stack:
new ch.qos.logback.classic.joran.ReconfigureOnChangeTask
dup
invokespecial ch.qos.logback.classic.joran.ReconfigureOnChangeTask.<init>:()V
astore 6
start local 6 8: aload 6
aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.setContext:(Lch/qos/logback/core/Context;)V
9: aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
ldc "RECONFIGURE_ON_CHANGE_TASK"
aload 6
invokeinterface ch.qos.logback.core.Context.putObject:(Ljava/lang/String;Ljava/lang/Object;)V
10: aload 1
aload 2
ldc "scanPeriod"
invokeinterface org.xml.sax.Attributes.getValue:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.subst:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 11: aload 0
aload 3
aload 7
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.getDuration:(Ljava/lang/String;Ljava/lang/String;)Lch/qos/logback/core/util/Duration;
astore 8
start local 8 12: aload 8
ifnonnull 14
13: return
14: StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask java.lang.String ch.qos.logback.core.util.Duration
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
ldc "Will scan for changes in ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)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.joran.action.ConfigurationAction.addInfo:(Ljava/lang/String;)V
15: aload 0
new java.lang.StringBuilder
dup
ldc "Setting ReconfigureOnChangeTask scanning period to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.addInfo:(Ljava/lang/String;)V
16: aload 4
aload 6
aload 8
invokevirtual ch.qos.logback.core.util.Duration.getMilliseconds:()J
aload 8
invokevirtual ch.qos.logback.core.util.Duration.getMilliseconds:()J
17: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
18: invokeinterface java.util.concurrent.ScheduledExecutorService.scheduleAtFixedRate:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
astore 9
start local 9 19: aload 0
getfield ch.qos.logback.classic.joran.action.ConfigurationAction.context:Lch/qos/logback/core/Context;
aload 9
invokeinterface ch.qos.logback.core.Context.addScheduledFuture:(Ljava/util/concurrent/ScheduledFuture;)V
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 20: StackMap locals: ch.qos.logback.classic.joran.action.ConfigurationAction ch.qos.logback.core.joran.spi.InterpretationContext org.xml.sax.Attributes java.lang.String
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
0 21 1 ic Lch/qos/logback/core/joran/spi/InterpretationContext;
0 21 2 attributes Lorg/xml/sax/Attributes;
1 21 3 scanAttrib Ljava/lang/String;
3 20 4 scheduledExecutorService Ljava/util/concurrent/ScheduledExecutorService;
4 20 5 mainURL Ljava/net/URL;
8 20 6 rocTask Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
11 20 7 scanPeriodAttrib Ljava/lang/String;
12 20 8 duration Lch/qos/logback/core/util/Duration;
19 20 9 scheduledFuture Ljava/util/concurrent/ScheduledFuture<*>;
MethodParameters:
Name Flags
ic
attributes
private ch.qos.logback.core.util.Duration getDuration(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Lch/qos/logback/core/util/Duration;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 2
invokestatic ch.qos.logback.core.util.OptionHelper.isEmpty:(Ljava/lang/String;)Z
ifne 6
2: aload 2
invokestatic ch.qos.logback.core.util.Duration.valueOf:(Ljava/lang/String;)Lch/qos/logback/core/util/Duration;
astore 3
3: goto 6
StackMap locals: ch.qos.logback.classic.joran.action.ConfigurationAction java.lang.String java.lang.String ch.qos.logback.core.util.Duration
StackMap stack: java.lang.NumberFormatException
4: astore 4
start local 4 5: aload 0
new java.lang.StringBuilder
dup
ldc "Error while converting ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] to long"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.addError:(Ljava/lang/String;Ljava/lang/Throwable;)V
end local 4 6: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
0 7 1 scanAttrib Ljava/lang/String;
0 7 2 scanPeriodAttrib Ljava/lang/String;
1 7 3 duration Lch/qos/logback/core/util/Duration;
5 6 4 nfe Ljava/lang/NumberFormatException;
Exception table:
from to target type
2 3 4 Class java.lang.NumberFormatException
MethodParameters:
Name Flags
scanAttrib
scanPeriodAttrib
public void end(ch.qos.logback.core.joran.spi.InterpretationContext, java.lang.String);
descriptor: (Lch/qos/logback/core/joran/spi/InterpretationContext;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ldc "End of configuration."
invokevirtual ch.qos.logback.classic.joran.action.ConfigurationAction.addInfo:(Ljava/lang/String;)V
1: aload 1
invokevirtual ch.qos.logback.core.joran.spi.InterpretationContext.popObject:()Ljava/lang/Object;
pop
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lch/qos/logback/classic/joran/action/ConfigurationAction;
0 3 1 ec Lch/qos/logback/core/joran/spi/InterpretationContext;
0 3 2 name Ljava/lang/String;
MethodParameters:
Name Flags
ec
name
}
SourceFile: "ConfigurationAction.java"