public class ch.qos.logback.classic.joran.ReconfigureOnChangeTask extends ch.qos.logback.core.spi.ContextAwareBase implements java.lang.Runnable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: ch.qos.logback.classic.joran.ReconfigureOnChangeTask
  super_class: ch.qos.logback.core.spi.ContextAwareBase
{
  public static final java.lang.String DETECTED_CHANGE_IN_CONFIGURATION_FILES;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "Detected change in configuration files."

  static final java.lang.String RE_REGISTERING_PREVIOUS_SAFE_CONFIGURATION;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "Re-registering previous fallback configuration once more as a fallback configuration point"

  static final java.lang.String FALLING_BACK_TO_SAFE_CONFIGURATION;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "Given previous errors, falling back to previously registered safe configuration."

  long birthdate;
    descriptor: J
    flags: (0x0000) 

  java.util.List<ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener> listeners;
    descriptor: Ljava/util/List;
    flags: (0x0000) 
    Signature: Ljava/util/List<Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;>;

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 19
            aload 0 /* this */
            invokespecial ch.qos.logback.core.spi.ContextAwareBase.<init>:()V
         1: .line 27
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.birthdate:J
         2: .line 19
            return
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;

  void addListener(ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener);
    descriptor: (Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
        start local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         0: .line 32
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            ifnonnull 2
         1: .line 33
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
         2: .line 34
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            aload 1 /* listener */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 35
            return
        end local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            0    4     1  listener  Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;
    MethodParameters:
          Name  Flags
      listener  

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 39
            aload 0 /* this */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.fireEnteredRunMethod:()V
         1: .line 41
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokestatic ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.getConfigurationWatchList:(Lch/qos/logback/core/Context;)Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
            astore 1 /* configurationWatchList */
        start local 1 // ch.qos.logback.core.joran.spi.ConfigurationWatchList configurationWatchList
         2: .line 42
            aload 1 /* configurationWatchList */
            ifnonnull 5
         3: .line 43
            aload 0 /* this */
            ldc "Empty ConfigurationWatchList in context"
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addWarn:(Ljava/lang/String;)V
         4: .line 44
            return
         5: .line 47
      StackMap locals: ch.qos.logback.core.joran.spi.ConfigurationWatchList
      StackMap stack:
            aload 1 /* configurationWatchList */
            invokevirtual ch.qos.logback.core.joran.spi.ConfigurationWatchList.getCopyOfFileWatchList:()Ljava/util/List;
            astore 2 /* filesToWatch */
        start local 2 // java.util.List filesToWatch
         6: .line 48
            aload 2 /* filesToWatch */
            ifnull 7
            aload 2 /* filesToWatch */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 9
         7: .line 49
      StackMap locals: java.util.List
      StackMap stack:
            aload 0 /* this */
            ldc "Empty watch file list. Disabling "
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addInfo:(Ljava/lang/String;)V
         8: .line 50
            return
         9: .line 53
      StackMap locals:
      StackMap stack:
            aload 1 /* configurationWatchList */
            invokevirtual ch.qos.logback.core.joran.spi.ConfigurationWatchList.changeDetected:()Z
            ifne 11
        10: .line 54
            return
        11: .line 57
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.fireChangeDetected:()V
        12: .line 58
            aload 1 /* configurationWatchList */
            invokevirtual ch.qos.logback.core.joran.spi.ConfigurationWatchList.getMainURL:()Ljava/net/URL;
            astore 3 /* mainConfigurationURL */
        start local 3 // java.net.URL mainConfigurationURL
        13: .line 60
            aload 0 /* this */
            ldc "Detected change in configuration files."
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addInfo:(Ljava/lang/String;)V
        14: .line 61
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "Will reset and reconfigure context named ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokeinterface ch.qos.logback.core.Context.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;
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addInfo:(Ljava/lang/String;)V
        15: .line 63
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            checkcast ch.qos.logback.classic.LoggerContext
            astore 4 /* lc */
        start local 4 // ch.qos.logback.classic.LoggerContext lc
        16: .line 64
            aload 3 /* mainConfigurationURL */
            invokevirtual java.net.URL.toString:()Ljava/lang/String;
            ldc "xml"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 19
        17: .line 65
            aload 0 /* this */
            aload 4 /* lc */
            aload 3 /* mainConfigurationURL */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.performXMLConfiguration:(Lch/qos/logback/classic/LoggerContext;Ljava/net/URL;)V
        18: .line 66
            goto 25
      StackMap locals: java.net.URL ch.qos.logback.classic.LoggerContext
      StackMap stack:
        19: aload 3 /* mainConfigurationURL */
            invokevirtual java.net.URL.toString:()Ljava/lang/String;
            ldc "groovy"
            invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
            ifeq 25
        20: .line 67
            invokestatic ch.qos.logback.classic.util.EnvUtil.isGroovyAvailable:()Z
            ifeq 24
        21: .line 68
            aload 4 /* lc */
            invokevirtual ch.qos.logback.classic.LoggerContext.reset:()V
        22: .line 71
            aload 4 /* lc */
            aload 0 /* this */
            aload 3 /* mainConfigurationURL */
            invokestatic ch.qos.logback.classic.gaffer.GafferUtil.runGafferConfiguratorOn:(Lch/qos/logback/classic/LoggerContext;Ljava/lang/Object;Ljava/net/URL;)V
        23: .line 72
            goto 25
        24: .line 73
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Groovy classes are not available on the class path. ABORTING INITIALIZATION."
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addError:(Ljava/lang/String;)V
        25: .line 76
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.fireDoneReconfiguring:()V
        26: .line 77
            return
        end local 4 // ch.qos.logback.classic.LoggerContext lc
        end local 3 // java.net.URL mainConfigurationURL
        end local 2 // java.util.List filesToWatch
        end local 1 // ch.qos.logback.core.joran.spi.ConfigurationWatchList configurationWatchList
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   27     0                    this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            2   27     1  configurationWatchList  Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
            6   27     2            filesToWatch  Ljava/util/List<Ljava/io/File;>;
           13   27     3    mainConfigurationURL  Ljava/net/URL;
           16   27     4                      lc  Lch/qos/logback/classic/LoggerContext;

  private void fireEnteredRunMethod();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 80
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            ifnonnull 2
         1: .line 81
            return
         2: .line 83
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener
            astore 1 /* listener */
        start local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         4: .line 84
            aload 1 /* listener */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener.enteredRunMethod:()V
        end local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         5: .line 83
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 85
            return
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            4    5     1  listener  Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;

  private void fireChangeDetected();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 88
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            ifnonnull 2
         1: .line 89
            return
         2: .line 91
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener
            astore 1 /* listener */
        start local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         4: .line 92
            aload 1 /* listener */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener.changeDetected:()V
        end local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         5: .line 91
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 93
            return
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            4    5     1  listener  Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;

  private void fireDoneReconfiguring();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 97
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            ifnonnull 2
         1: .line 98
            return
         2: .line 100
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.listeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 2
            goto 5
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask top java.util.Iterator
      StackMap stack:
         3: aload 2
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener
            astore 1 /* listener */
        start local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         4: .line 101
            aload 1 /* listener */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener.doneReconfiguring:()V
        end local 1 // ch.qos.logback.classic.joran.ReconfigureOnChangeTaskListener listener
         5: .line 100
      StackMap locals:
      StackMap stack:
            aload 2
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 102
            return
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            4    5     1  listener  Lch/qos/logback/classic/joran/ReconfigureOnChangeTaskListener;

  private void performXMLConfiguration(ch.qos.logback.classic.LoggerContext, java.net.URL);
    descriptor: (Lch/qos/logback/classic/LoggerContext;Ljava/net/URL;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
        start local 1 // ch.qos.logback.classic.LoggerContext lc
        start local 2 // java.net.URL mainConfigurationURL
         0: .line 105
            new ch.qos.logback.classic.joran.JoranConfigurator
            dup
            invokespecial ch.qos.logback.classic.joran.JoranConfigurator.<init>:()V
            astore 3 /* jc */
        start local 3 // ch.qos.logback.classic.joran.JoranConfigurator jc
         1: .line 106
            aload 3 /* jc */
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.setContext:(Lch/qos/logback/core/Context;)V
         2: .line 107
            new ch.qos.logback.core.status.StatusUtil
            dup
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokespecial ch.qos.logback.core.status.StatusUtil.<init>:(Lch/qos/logback/core/Context;)V
            astore 4 /* statusUtil */
        start local 4 // ch.qos.logback.core.status.StatusUtil statusUtil
         3: .line 108
            aload 3 /* jc */
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.recallSafeConfiguration:()Ljava/util/List;
            astore 5 /* eventList */
        start local 5 // java.util.List eventList
         4: .line 110
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokestatic ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.getMainWatchURL:(Lch/qos/logback/core/Context;)Ljava/net/URL;
            astore 6 /* mainURL */
        start local 6 // java.net.URL mainURL
         5: .line 111
            aload 1 /* lc */
            invokevirtual ch.qos.logback.classic.LoggerContext.reset:()V
         6: .line 112
            invokestatic java.lang.System.currentTimeMillis:()J
            lstore 7 /* threshold */
        start local 7 // long threshold
         7: .line 114
            aload 3 /* jc */
            aload 2 /* mainConfigurationURL */
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.doConfigure:(Ljava/net/URL;)V
         8: .line 115
            aload 4 /* statusUtil */
            lload 7 /* threshold */
            invokevirtual ch.qos.logback.core.status.StatusUtil.hasXMLParsingErrors:(J)Z
            ifeq 13
         9: .line 116
            aload 0 /* this */
            aload 1 /* lc */
            aload 5 /* eventList */
            aload 6 /* mainURL */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.fallbackConfiguration:(Lch/qos/logback/classic/LoggerContext;Ljava/util/List;Ljava/net/URL;)V
        10: .line 118
            goto 13
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask ch.qos.logback.classic.LoggerContext java.net.URL ch.qos.logback.classic.joran.JoranConfigurator ch.qos.logback.core.status.StatusUtil java.util.List java.net.URL long
      StackMap stack: ch.qos.logback.core.joran.spi.JoranException
        11: pop
        12: .line 119
            aload 0 /* this */
            aload 1 /* lc */
            aload 5 /* eventList */
            aload 6 /* mainURL */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.fallbackConfiguration:(Lch/qos/logback/classic/LoggerContext;Ljava/util/List;Ljava/net/URL;)V
        13: .line 121
      StackMap locals:
      StackMap stack:
            return
        end local 7 // long threshold
        end local 6 // java.net.URL mainURL
        end local 5 // java.util.List eventList
        end local 4 // ch.qos.logback.core.status.StatusUtil statusUtil
        end local 3 // ch.qos.logback.classic.joran.JoranConfigurator jc
        end local 2 // java.net.URL mainConfigurationURL
        end local 1 // ch.qos.logback.classic.LoggerContext lc
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   14     0                  this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            0   14     1                    lc  Lch/qos/logback/classic/LoggerContext;
            0   14     2  mainConfigurationURL  Ljava/net/URL;
            1   14     3                    jc  Lch/qos/logback/classic/joran/JoranConfigurator;
            3   14     4            statusUtil  Lch/qos/logback/core/status/StatusUtil;
            4   14     5             eventList  Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
            5   14     6               mainURL  Ljava/net/URL;
            7   14     7             threshold  J
      Exception table:
        from    to  target  type
           7    10      11  Class ch.qos.logback.core.joran.spi.JoranException
    MethodParameters:
                      Name  Flags
      lc                    
      mainConfigurationURL  

  private java.util.List<ch.qos.logback.core.joran.event.SaxEvent> removeIncludeEvents(java.util.List<ch.qos.logback.core.joran.event.SaxEvent>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
        start local 1 // java.util.List unsanitizedEventList
         0: .line 124
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* sanitizedEvents */
        start local 2 // java.util.List sanitizedEvents
         1: .line 125
            aload 1 /* unsanitizedEventList */
            ifnonnull 3
         2: .line 126
            aload 2 /* sanitizedEvents */
            areturn
         3: .line 128
      StackMap locals: java.util.List
      StackMap stack:
            aload 1 /* unsanitizedEventList */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 7
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask java.util.List java.util.List top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast ch.qos.logback.core.joran.event.SaxEvent
            astore 3 /* e */
        start local 3 // ch.qos.logback.core.joran.event.SaxEvent e
         5: .line 129
            ldc "include"
            aload 3 /* e */
            invokevirtual ch.qos.logback.core.joran.event.SaxEvent.getLocalName:()Ljava/lang/String;
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifne 7
         6: .line 130
            aload 2 /* sanitizedEvents */
            aload 3 /* e */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 3 // ch.qos.logback.core.joran.event.SaxEvent e
         7: .line 128
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         8: .line 133
            aload 2 /* sanitizedEvents */
            areturn
        end local 2 // java.util.List sanitizedEvents
        end local 1 // java.util.List unsanitizedEventList
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    9     0                  this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            0    9     1  unsanitizedEventList  Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
            1    9     2       sanitizedEvents  Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
            5    7     3                     e  Lch/qos/logback/core/joran/event/SaxEvent;
    Signature: (Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;)Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
    MethodParameters:
                      Name  Flags
      unsanitizedEventList  

  private void fallbackConfiguration(ch.qos.logback.classic.LoggerContext, java.util.List<ch.qos.logback.core.joran.event.SaxEvent>, java.net.URL);
    descriptor: (Lch/qos/logback/classic/LoggerContext;Ljava/util/List;Ljava/net/URL;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=9, args_size=4
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
        start local 1 // ch.qos.logback.classic.LoggerContext lc
        start local 2 // java.util.List eventList
        start local 3 // java.net.URL mainURL
         0: .line 140
            aload 0 /* this */
            aload 2 /* eventList */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.removeIncludeEvents:(Ljava/util/List;)Ljava/util/List;
            astore 4 /* failsafeEvents */
        start local 4 // java.util.List failsafeEvents
         1: .line 141
            new ch.qos.logback.classic.joran.JoranConfigurator
            dup
            invokespecial ch.qos.logback.classic.joran.JoranConfigurator.<init>:()V
            astore 5 /* joranConfigurator */
        start local 5 // ch.qos.logback.classic.joran.JoranConfigurator joranConfigurator
         2: .line 142
            aload 5 /* joranConfigurator */
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.setContext:(Lch/qos/logback/core/Context;)V
         3: .line 143
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            invokestatic ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.getConfigurationWatchList:(Lch/qos/logback/core/Context;)Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
            astore 6 /* oldCWL */
        start local 6 // ch.qos.logback.core.joran.spi.ConfigurationWatchList oldCWL
         4: .line 144
            aload 6 /* oldCWL */
            invokevirtual ch.qos.logback.core.joran.spi.ConfigurationWatchList.buildClone:()Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
            astore 7 /* newCWL */
        start local 7 // ch.qos.logback.core.joran.spi.ConfigurationWatchList newCWL
         5: .line 146
            aload 4 /* failsafeEvents */
            ifnull 6
            aload 4 /* failsafeEvents */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 8
         6: .line 147
      StackMap locals: ch.qos.logback.classic.joran.ReconfigureOnChangeTask ch.qos.logback.classic.LoggerContext java.util.List java.net.URL java.util.List ch.qos.logback.classic.joran.JoranConfigurator ch.qos.logback.core.joran.spi.ConfigurationWatchList ch.qos.logback.core.joran.spi.ConfigurationWatchList
      StackMap stack:
            aload 0 /* this */
            ldc "No previous configuration to fall back on."
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addWarn:(Ljava/lang/String;)V
         7: .line 148
            goto 18
         8: .line 149
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "Given previous errors, falling back to previously registered safe configuration."
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addWarn:(Ljava/lang/String;)V
         9: .line 151
            aload 1 /* lc */
            invokevirtual ch.qos.logback.classic.LoggerContext.reset:()V
        10: .line 152
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.context:Lch/qos/logback/core/Context;
            aload 7 /* newCWL */
            invokestatic ch.qos.logback.core.joran.util.ConfigurationWatchListUtil.registerConfigurationWatchList:(Lch/qos/logback/core/Context;Lch/qos/logback/core/joran/spi/ConfigurationWatchList;)V
        11: .line 153
            aload 5 /* joranConfigurator */
            aload 4 /* failsafeEvents */
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.doConfigure:(Ljava/util/List;)V
        12: .line 154
            aload 0 /* this */
            ldc "Re-registering previous fallback configuration once more as a fallback configuration point"
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addInfo:(Ljava/lang/String;)V
        13: .line 155
            aload 5 /* joranConfigurator */
            aload 2 /* eventList */
            invokevirtual ch.qos.logback.classic.joran.JoranConfigurator.registerSafeConfiguration:(Ljava/util/List;)V
        14: .line 157
            aload 0 /* this */
            new java.lang.StringBuilder
            dup
            ldc "after registerSafeConfiguration: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* eventList */
            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.ReconfigureOnChangeTask.addInfo:(Ljava/lang/String;)V
        15: .line 158
            goto 18
      StackMap locals:
      StackMap stack: ch.qos.logback.core.joran.spi.JoranException
        16: astore 8 /* e */
        start local 8 // ch.qos.logback.core.joran.spi.JoranException e
        17: .line 159
            aload 0 /* this */
            ldc "Unexpected exception thrown by a configuration considered safe."
            aload 8 /* e */
            invokevirtual ch.qos.logback.classic.joran.ReconfigureOnChangeTask.addError:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 8 // ch.qos.logback.core.joran.spi.JoranException e
        18: .line 162
      StackMap locals:
      StackMap stack:
            return
        end local 7 // ch.qos.logback.core.joran.spi.ConfigurationWatchList newCWL
        end local 6 // ch.qos.logback.core.joran.spi.ConfigurationWatchList oldCWL
        end local 5 // ch.qos.logback.classic.joran.JoranConfigurator joranConfigurator
        end local 4 // java.util.List failsafeEvents
        end local 3 // java.net.URL mainURL
        end local 2 // java.util.List eventList
        end local 1 // ch.qos.logback.classic.LoggerContext lc
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   19     0               this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
            0   19     1                 lc  Lch/qos/logback/classic/LoggerContext;
            0   19     2          eventList  Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
            0   19     3            mainURL  Ljava/net/URL;
            1   19     4     failsafeEvents  Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;
            2   19     5  joranConfigurator  Lch/qos/logback/classic/joran/JoranConfigurator;
            4   19     6             oldCWL  Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
            5   19     7             newCWL  Lch/qos/logback/core/joran/spi/ConfigurationWatchList;
           17   18     8                  e  Lch/qos/logback/core/joran/spi/JoranException;
      Exception table:
        from    to  target  type
           9    15      16  Class ch.qos.logback.core.joran.spi.JoranException
    Signature: (Lch/qos/logback/classic/LoggerContext;Ljava/util/List<Lch/qos/logback/core/joran/event/SaxEvent;>;Ljava/net/URL;)V
    MethodParameters:
           Name  Flags
      lc         
      eventList  
      mainURL    

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
         0: .line 166
            new java.lang.StringBuilder
            dup
            ldc "ReconfigureOnChangeTask(born:"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield ch.qos.logback.classic.joran.ReconfigureOnChangeTask.birthdate:J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // ch.qos.logback.classic.joran.ReconfigureOnChangeTask this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lch/qos/logback/classic/joran/ReconfigureOnChangeTask;
}
SourceFile: "ReconfigureOnChangeTask.java"