public class org.apache.logging.log4j.core.config.ConfiguratonFileWatcher implements org.apache.logging.log4j.core.util.FileWatcher
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.logging.log4j.core.config.ConfiguratonFileWatcher
  super_class: java.lang.Object
{
  private final org.apache.logging.log4j.core.config.Reconfigurable reconfigurable;
    descriptor: Lorg/apache/logging/log4j/core/config/Reconfigurable;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.List<org.apache.logging.log4j.core.config.ConfigurationListener> configurationListeners;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/logging/log4j/core/config/ConfigurationListener;>;

  private final org.apache.logging.log4j.core.util.Log4jThreadFactory threadFactory;
    descriptor: Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.apache.logging.log4j.core.config.Reconfigurable, java.util.List<org.apache.logging.log4j.core.config.ConfigurationListener>);
    descriptor: (Lorg/apache/logging/log4j/core/config/Reconfigurable;Ljava/util/List;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
        start local 1 // org.apache.logging.log4j.core.config.Reconfigurable reconfigurable
        start local 2 // java.util.List configurationListeners
         0: .line 34
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 35
            aload 0 /* this */
            aload 1 /* reconfigurable */
            putfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.reconfigurable:Lorg/apache/logging/log4j/core/config/Reconfigurable;
         2: .line 36
            aload 0 /* this */
            aload 2 /* configurationListeners */
            putfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.configurationListeners:Ljava/util/List;
         3: .line 37
            aload 0 /* this */
            ldc "ConfiguratonFileWatcher"
            invokestatic org.apache.logging.log4j.core.util.Log4jThreadFactory.createDaemonThreadFactory:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
            putfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
         4: .line 38
            return
        end local 2 // java.util.List configurationListeners
        end local 1 // org.apache.logging.log4j.core.config.Reconfigurable reconfigurable
        end local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0    5     0                    this  Lorg/apache/logging/log4j/core/config/ConfiguratonFileWatcher;
            0    5     1          reconfigurable  Lorg/apache/logging/log4j/core/config/Reconfigurable;
            0    5     2  configurationListeners  Ljava/util/List<Lorg/apache/logging/log4j/core/config/ConfigurationListener;>;
    Signature: (Lorg/apache/logging/log4j/core/config/Reconfigurable;Ljava/util/List<Lorg/apache/logging/log4j/core/config/ConfigurationListener;>;)V
    MethodParameters:
                        Name  Flags
      reconfigurable          final
      configurationListeners  final

  public java.util.List<org.apache.logging.log4j.core.config.ConfigurationListener> getListeners();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
         0: .line 41
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.configurationListeners:Ljava/util/List;
            areturn
        end local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/config/ConfiguratonFileWatcher;
    Signature: ()Ljava/util/List<Lorg/apache/logging/log4j/core/config/ConfigurationListener;>;

  public void fileModified(java.io.File);
    descriptor: (Ljava/io/File;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
        start local 1 // java.io.File file
         0: .line 47
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.configurationListeners:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: org.apache.logging.log4j.core.config.ConfiguratonFileWatcher java.io.File top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.logging.log4j.core.config.ConfigurationListener
            astore 2 /* configurationListener */
        start local 2 // org.apache.logging.log4j.core.config.ConfigurationListener configurationListener
         2: .line 48
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
            new org.apache.logging.log4j.core.config.ConfiguratonFileWatcher$ReconfigurationRunnable
            dup
            aload 2 /* configurationListener */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.config.ConfiguratonFileWatcher.reconfigurable:Lorg/apache/logging/log4j/core/config/Reconfigurable;
            invokespecial org.apache.logging.log4j.core.config.ConfiguratonFileWatcher$ReconfigurationRunnable.<init>:(Lorg/apache/logging/log4j/core/config/ConfigurationListener;Lorg/apache/logging/log4j/core/config/Reconfigurable;)V
            invokevirtual org.apache.logging.log4j.core.util.Log4jThreadFactory.newThread:(Ljava/lang/Runnable;)Ljava/lang/Thread;
            astore 4 /* thread */
        start local 4 // java.lang.Thread thread
         3: .line 49
            aload 4 /* thread */
            invokevirtual java.lang.Thread.start:()V
        end local 4 // java.lang.Thread thread
        end local 2 // org.apache.logging.log4j.core.config.ConfigurationListener configurationListener
         4: .line 47
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         5: .line 51
            return
        end local 1 // java.io.File file
        end local 0 // org.apache.logging.log4j.core.config.ConfiguratonFileWatcher this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    6     0                   this  Lorg/apache/logging/log4j/core/config/ConfiguratonFileWatcher;
            0    6     1                   file  Ljava/io/File;
            2    4     2  configurationListener  Lorg/apache/logging/log4j/core/config/ConfigurationListener;
            3    4     4                 thread  Ljava/lang/Thread;
    MethodParameters:
      Name  Flags
      file  final
}
SourceFile: "ConfiguratonFileWatcher.java"
NestMembers:
  org.apache.logging.log4j.core.config.ConfiguratonFileWatcher$ReconfigurationRunnable
InnerClasses:
  private ReconfigurationRunnable = org.apache.logging.log4j.core.config.ConfiguratonFileWatcher$ReconfigurationRunnable of org.apache.logging.log4j.core.config.ConfiguratonFileWatcher