public class org.apache.logging.log4j.core.appender.rolling.RollingFileManager extends org.apache.logging.log4j.core.appender.FileManager
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.logging.log4j.core.appender.rolling.RollingFileManager
  super_class: org.apache.logging.log4j.core.appender.FileManager
{
  private static org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory factory;
    descriptor: Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager$RollingFileManagerFactory;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static final int MAX_TRIES;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  private static final int MIN_DURATION;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 100

  private static final java.nio.file.attribute.FileTime EPOCH;
    descriptor: Ljava/nio/file/attribute/FileTime;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected long size;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

  private long initialTime;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private volatile org.apache.logging.log4j.core.appender.rolling.PatternProcessor patternProcessor;
    descriptor: Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final java.util.concurrent.Semaphore semaphore;
    descriptor: Ljava/util/concurrent/Semaphore;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

  private volatile org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy;
    descriptor: Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy;
    descriptor: Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile boolean renameEmptyFiles;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile boolean initialized;
    descriptor: Z
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private volatile java.lang.String fileName;
    descriptor: Ljava/lang/String;
    flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE

  private final org.apache.logging.log4j.core.appender.rolling.FileExtension fileExtension;
    descriptor: Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.ExecutorService asyncExecutor;
    descriptor: Ljava/util/concurrent/ExecutorService;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.apache.logging.log4j.core.appender.rolling.RollingFileManager, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy> triggeringPolicyUpdater;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;>;

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.apache.logging.log4j.core.appender.rolling.RollingFileManager, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy> rolloverStrategyUpdater;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;>;

  private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<org.apache.logging.log4j.core.appender.rolling.RollingFileManager, org.apache.logging.log4j.core.appender.rolling.PatternProcessor> patternProcessorUpdater;
    descriptor: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater<Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 58
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory
            dup
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory.<init>:()V
            putstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.factory:Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager$RollingFileManagerFactory;
         1: .line 61
            lconst_0
            invokestatic java.nio.file.attribute.FileTime.fromMillis:(J)Ljava/nio/file/attribute/FileTime;
            putstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.EPOCH:Ljava/nio/file/attribute/FileTime;
         2: .line 81
            ldc Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            ldc Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            ldc "triggeringPolicy"
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         3: .line 80
            putstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicyUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         4: .line 84
            ldc Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            ldc Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            ldc "rolloverStrategy"
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         5: .line 83
            putstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategyUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         6: .line 87
            ldc Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            ldc Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            ldc "patternProcessor"
            invokestatic java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater:(Ljava/lang/Class;Ljava/lang/Class;Ljava/lang/String;)Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         7: .line 86
            putstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessorUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
         8: .line 87
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>(java.lang.String, java.lang.String, java.io.OutputStream, boolean, long, long, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy, java.lang.String, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>, int, );
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;IZ)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=15, args_size=13
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // java.lang.String fileName
        start local 2 // java.lang.String pattern
        start local 3 // java.io.OutputStream os
        start local 4 // boolean append
        start local 5 // long size
        start local 7 // long initialTime
        start local 9 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        start local 10 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        start local 11 // java.lang.String advertiseURI
        start local 12 // org.apache.logging.log4j.core.Layout layout
        start local 13 // int bufferSize
        start local 14 // boolean writeHeader
         0: .line 94
            aload 0 /* this */
            aload 1 /* fileName */
            aload 2 /* pattern */
            aload 3 /* os */
            iload 4 /* append */
            lload 5 /* size */
            lload 7 /* initialTime */
            aload 9 /* triggeringPolicy */
            aload 10 /* rolloverStrategy */
            aload 11 /* advertiseURI */
            aload 12 /* layout */
         1: .line 95
            iload 14 /* writeHeader */
            getstatic org.apache.logging.log4j.core.util.Constants.ENCODER_BYTE_BUFFER_SIZE:I
            newarray 8
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;ZLjava/nio/ByteBuffer;)V
         2: .line 96
            return
        end local 14 // boolean writeHeader
        end local 13 // int bufferSize
        end local 12 // org.apache.logging.log4j.core.Layout layout
        end local 11 // java.lang.String advertiseURI
        end local 10 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        end local 9 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        end local 7 // long initialTime
        end local 5 // long size
        end local 4 // boolean append
        end local 3 // java.io.OutputStream os
        end local 2 // java.lang.String pattern
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    3     1          fileName  Ljava/lang/String;
            0    3     2           pattern  Ljava/lang/String;
            0    3     3                os  Ljava/io/OutputStream;
            0    3     4            append  Z
            0    3     5              size  J
            0    3     7       initialTime  J
            0    3     9  triggeringPolicy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            0    3    10  rolloverStrategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            0    3    11      advertiseURI  Ljava/lang/String;
            0    3    12            layout  Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;
            0    3    13        bufferSize  I
            0    3    14       writeHeader  Z
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;IZ)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                  Name  Flags
      fileName          final
      pattern           final
      os                final
      append            final
      size              final
      initialTime       final
      triggeringPolicy  final
      rolloverStrategy  final
      advertiseURI      final
      layout            final
      bufferSize        final
      writeHeader       final

  protected void <init>(java.lang.String, java.lang.String, java.io.OutputStream, boolean, long, long, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy, java.lang.String, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>, boolean, java.nio.ByteBuffer);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;ZLjava/nio/ByteBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=15, args_size=13
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // java.lang.String fileName
        start local 2 // java.lang.String pattern
        start local 3 // java.io.OutputStream os
        start local 4 // boolean append
        start local 5 // long size
        start local 7 // long initialTime
        start local 9 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        start local 10 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        start local 11 // java.lang.String advertiseURI
        start local 12 // org.apache.logging.log4j.core.Layout layout
        start local 13 // boolean writeHeader
        start local 14 // java.nio.ByteBuffer buffer
         0: .line 103
            aload 0 /* this */
            aload 1 /* fileName */
            ifnull 1
            aload 1 /* fileName */
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: aload 2 /* pattern */
      StackMap locals: uninitialized-this java.lang.String java.lang.String java.io.OutputStream int long long org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy org.apache.logging.log4j.core.appender.rolling.RolloverStrategy java.lang.String org.apache.logging.log4j.core.Layout int java.nio.ByteBuffer
      StackMap stack: uninitialized-this java.lang.String
         2: aload 3 /* os */
            iload 4 /* append */
            iconst_0
            aload 11 /* advertiseURI */
            aload 12 /* layout */
            iload 13 /* writeHeader */
         3: .line 104
            aload 14 /* buffer */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.<init>:(Ljava/lang/String;Ljava/io/OutputStream;ZZLjava/lang/String;Lorg/apache/logging/log4j/core/Layout;ZLjava/nio/ByteBuffer;)V
         4: .line 66
            aload 0 /* this */
            new java.util.concurrent.Semaphore
            dup
            iconst_1
            invokespecial java.util.concurrent.Semaphore.<init>:(I)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
         5: .line 67
            aload 0 /* this */
            ldc "RollingFileManager"
            invokestatic org.apache.logging.log4j.core.util.Log4jThreadFactory.createThreadFactory:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
         6: .line 70
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.renameEmptyFiles:Z
         7: .line 71
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialized:Z
         8: .line 77
            aload 0 /* this */
            new java.util.concurrent.ThreadPoolExecutor
            dup
            iconst_0
            ldc 2147483647
            lconst_0
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
         9: .line 78
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue
            dup
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue.<init>:()V
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
        10: .line 77
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
        11: .line 105
            aload 0 /* this */
            lload 5 /* size */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
        12: .line 106
            aload 0 /* this */
            lload 7 /* initialTime */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialTime:J
        13: .line 107
            aload 0 /* this */
            aload 9 /* triggeringPolicy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
        14: .line 108
            aload 0 /* this */
            aload 10 /* rolloverStrategy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
        15: .line 109
            aload 0 /* this */
            new org.apache.logging.log4j.core.appender.rolling.PatternProcessor
            dup
            aload 2 /* pattern */
            invokespecial org.apache.logging.log4j.core.appender.rolling.PatternProcessor.<init>:(Ljava/lang/String;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
        16: .line 110
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            lload 7 /* initialTime */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.PatternProcessor.setPrevFileTime:(J)V
        17: .line 111
            aload 0 /* this */
            aload 1 /* fileName */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileName:Ljava/lang/String;
        18: .line 112
            aload 0 /* this */
            aload 2 /* pattern */
            invokestatic org.apache.logging.log4j.core.appender.rolling.FileExtension.lookupForFile:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileExtension:Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
        19: .line 113
            return
        end local 14 // java.nio.ByteBuffer buffer
        end local 13 // boolean writeHeader
        end local 12 // org.apache.logging.log4j.core.Layout layout
        end local 11 // java.lang.String advertiseURI
        end local 10 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        end local 9 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        end local 7 // long initialTime
        end local 5 // long size
        end local 4 // boolean append
        end local 3 // java.io.OutputStream os
        end local 2 // java.lang.String pattern
        end local 1 // java.lang.String fileName
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   20     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   20     1          fileName  Ljava/lang/String;
            0   20     2           pattern  Ljava/lang/String;
            0   20     3                os  Ljava/io/OutputStream;
            0   20     4            append  Z
            0   20     5              size  J
            0   20     7       initialTime  J
            0   20     9  triggeringPolicy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            0   20    10  rolloverStrategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            0   20    11      advertiseURI  Ljava/lang/String;
            0   20    12            layout  Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;
            0   20    13       writeHeader  Z
            0   20    14            buffer  Ljava/nio/ByteBuffer;
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;ZLjava/nio/ByteBuffer;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                  Name  Flags
      fileName          final
      pattern           final
      os                final
      append            final
      size              final
      initialTime       final
      triggeringPolicy  final
      rolloverStrategy  final
      advertiseURI      final
      layout            final
      writeHeader       final
      buffer            final

  protected void <init>(org.apache.logging.log4j.core.LoggerContext, java.lang.String, java.lang.String, java.io.OutputStream, boolean, boolean, long, long, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy, java.lang.String, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>, boolean, java.nio.ByteBuffer);
    descriptor: (Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;ZLjava/nio/ByteBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=11, locals=17, args_size=15
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.LoggerContext loggerContext
        start local 2 // java.lang.String fileName
        start local 3 // java.lang.String pattern
        start local 4 // java.io.OutputStream os
        start local 5 // boolean append
        start local 6 // boolean createOnDemand
        start local 7 // long size
        start local 9 // long initialTime
        start local 11 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        start local 12 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        start local 13 // java.lang.String advertiseURI
        start local 14 // org.apache.logging.log4j.core.Layout layout
        start local 15 // boolean writeHeader
        start local 16 // java.nio.ByteBuffer buffer
         0: .line 120
            aload 0 /* this */
            aload 1 /* loggerContext */
            aload 2 /* fileName */
            ifnull 1
            aload 2 /* fileName */
            goto 2
      StackMap locals: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String java.lang.String java.io.OutputStream int int long long org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy org.apache.logging.log4j.core.appender.rolling.RolloverStrategy java.lang.String org.apache.logging.log4j.core.Layout int java.nio.ByteBuffer
      StackMap stack: uninitialized-this org.apache.logging.log4j.core.LoggerContext
         1: aload 3 /* pattern */
      StackMap locals: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String java.lang.String java.io.OutputStream int int long long org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy org.apache.logging.log4j.core.appender.rolling.RolloverStrategy java.lang.String org.apache.logging.log4j.core.Layout int java.nio.ByteBuffer
      StackMap stack: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String
         2: aload 4 /* os */
            iload 5 /* append */
            iconst_0
            iload 6 /* createOnDemand */
         3: .line 121
            aload 13 /* advertiseURI */
            aload 14 /* layout */
            iload 15 /* writeHeader */
            aload 16 /* buffer */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.<init>:(Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/io/OutputStream;ZZZLjava/lang/String;Lorg/apache/logging/log4j/core/Layout;ZLjava/nio/ByteBuffer;)V
         4: .line 66
            aload 0 /* this */
            new java.util.concurrent.Semaphore
            dup
            iconst_1
            invokespecial java.util.concurrent.Semaphore.<init>:(I)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
         5: .line 67
            aload 0 /* this */
            ldc "RollingFileManager"
            invokestatic org.apache.logging.log4j.core.util.Log4jThreadFactory.createThreadFactory:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
         6: .line 70
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.renameEmptyFiles:Z
         7: .line 71
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialized:Z
         8: .line 77
            aload 0 /* this */
            new java.util.concurrent.ThreadPoolExecutor
            dup
            iconst_0
            ldc 2147483647
            lconst_0
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
         9: .line 78
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue
            dup
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue.<init>:()V
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
        10: .line 77
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
        11: .line 122
            aload 0 /* this */
            lload 7 /* size */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
        12: .line 123
            aload 0 /* this */
            lload 9 /* initialTime */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialTime:J
        13: .line 124
            aload 0 /* this */
            aload 11 /* triggeringPolicy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
        14: .line 125
            aload 0 /* this */
            aload 12 /* rolloverStrategy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
        15: .line 126
            aload 0 /* this */
            new org.apache.logging.log4j.core.appender.rolling.PatternProcessor
            dup
            aload 3 /* pattern */
            invokespecial org.apache.logging.log4j.core.appender.rolling.PatternProcessor.<init>:(Ljava/lang/String;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
        16: .line 127
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            lload 9 /* initialTime */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.PatternProcessor.setPrevFileTime:(J)V
        17: .line 128
            aload 0 /* this */
            aload 2 /* fileName */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileName:Ljava/lang/String;
        18: .line 129
            aload 0 /* this */
            aload 3 /* pattern */
            invokestatic org.apache.logging.log4j.core.appender.rolling.FileExtension.lookupForFile:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileExtension:Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
        19: .line 130
            return
        end local 16 // java.nio.ByteBuffer buffer
        end local 15 // boolean writeHeader
        end local 14 // org.apache.logging.log4j.core.Layout layout
        end local 13 // java.lang.String advertiseURI
        end local 12 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        end local 11 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        end local 9 // long initialTime
        end local 7 // long size
        end local 6 // boolean createOnDemand
        end local 5 // boolean append
        end local 4 // java.io.OutputStream os
        end local 3 // java.lang.String pattern
        end local 2 // java.lang.String fileName
        end local 1 // org.apache.logging.log4j.core.LoggerContext loggerContext
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   20     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   20     1     loggerContext  Lorg/apache/logging/log4j/core/LoggerContext;
            0   20     2          fileName  Ljava/lang/String;
            0   20     3           pattern  Ljava/lang/String;
            0   20     4                os  Ljava/io/OutputStream;
            0   20     5            append  Z
            0   20     6    createOnDemand  Z
            0   20     7              size  J
            0   20     9       initialTime  J
            0   20    11  triggeringPolicy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            0   20    12  rolloverStrategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            0   20    13      advertiseURI  Ljava/lang/String;
            0   20    14            layout  Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;
            0   20    15       writeHeader  Z
            0   20    16            buffer  Ljava/nio/ByteBuffer;
    Signature: (Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;ZLjava/nio/ByteBuffer;)V
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
                  Name  Flags
      loggerContext     final
      fileName          final
      pattern           final
      os                final
      append            final
      createOnDemand    final
      size              final
      initialTime       final
      triggeringPolicy  final
      rolloverStrategy  final
      advertiseURI      final
      layout            final
      writeHeader       final
      buffer            final

  protected void <init>(org.apache.logging.log4j.core.LoggerContext, java.lang.String, java.lang.String, java.io.OutputStream, boolean, boolean, long, long, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy, java.lang.String, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>, java.lang.String, java.lang.String, java.lang.String, boolean, java.nio.ByteBuffer);
    descriptor: (Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/nio/ByteBuffer;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=14, locals=20, args_size=18
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.LoggerContext loggerContext
        start local 2 // java.lang.String fileName
        start local 3 // java.lang.String pattern
        start local 4 // java.io.OutputStream os
        start local 5 // boolean append
        start local 6 // boolean createOnDemand
        start local 7 // long size
        start local 9 // long initialTime
        start local 11 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        start local 12 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        start local 13 // java.lang.String advertiseURI
        start local 14 // org.apache.logging.log4j.core.Layout layout
        start local 15 // java.lang.String filePermissions
        start local 16 // java.lang.String fileOwner
        start local 17 // java.lang.String fileGroup
        start local 18 // boolean writeHeader
        start local 19 // java.nio.ByteBuffer buffer
         0: .line 141
            aload 0 /* this */
            aload 1 /* loggerContext */
            aload 2 /* fileName */
            ifnull 1
            aload 2 /* fileName */
            goto 2
      StackMap locals: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String java.lang.String java.io.OutputStream int int long long org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy org.apache.logging.log4j.core.appender.rolling.RolloverStrategy java.lang.String org.apache.logging.log4j.core.Layout java.lang.String java.lang.String java.lang.String int java.nio.ByteBuffer
      StackMap stack: uninitialized-this org.apache.logging.log4j.core.LoggerContext
         1: aload 3 /* pattern */
      StackMap locals: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String java.lang.String java.io.OutputStream int int long long org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy org.apache.logging.log4j.core.appender.rolling.RolloverStrategy java.lang.String org.apache.logging.log4j.core.Layout java.lang.String java.lang.String java.lang.String int java.nio.ByteBuffer
      StackMap stack: uninitialized-this org.apache.logging.log4j.core.LoggerContext java.lang.String
         2: aload 4 /* os */
            iload 5 /* append */
            iconst_0
            iload 6 /* createOnDemand */
         3: .line 142
            aload 13 /* advertiseURI */
            aload 14 /* layout */
            aload 15 /* filePermissions */
            aload 16 /* fileOwner */
            aload 17 /* fileGroup */
            iload 18 /* writeHeader */
            aload 19 /* buffer */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.<init>:(Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/io/OutputStream;ZZZLjava/lang/String;Lorg/apache/logging/log4j/core/Layout;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/nio/ByteBuffer;)V
         4: .line 66
            aload 0 /* this */
            new java.util.concurrent.Semaphore
            dup
            iconst_1
            invokespecial java.util.concurrent.Semaphore.<init>:(I)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
         5: .line 67
            aload 0 /* this */
            ldc "RollingFileManager"
            invokestatic org.apache.logging.log4j.core.util.Log4jThreadFactory.createThreadFactory:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
         6: .line 70
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.renameEmptyFiles:Z
         7: .line 71
            aload 0 /* this */
            iconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialized:Z
         8: .line 77
            aload 0 /* this */
            new java.util.concurrent.ThreadPoolExecutor
            dup
            iconst_0
            ldc 2147483647
            lconst_0
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
         9: .line 78
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue
            dup
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue.<init>:()V
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.threadFactory:Lorg/apache/logging/log4j/core/util/Log4jThreadFactory;
        10: .line 77
            invokespecial java.util.concurrent.ThreadPoolExecutor.<init>:(IIJLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/BlockingQueue;Ljava/util/concurrent/ThreadFactory;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
        11: .line 143
            aload 0 /* this */
            lload 7 /* size */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
        12: .line 144
            aload 0 /* this */
            lload 9 /* initialTime */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialTime:J
        13: .line 145
            aload 0 /* this */
            aload 11 /* triggeringPolicy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
        14: .line 146
            aload 0 /* this */
            aload 12 /* rolloverStrategy */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
        15: .line 147
            aload 0 /* this */
            new org.apache.logging.log4j.core.appender.rolling.PatternProcessor
            dup
            aload 3 /* pattern */
            invokespecial org.apache.logging.log4j.core.appender.rolling.PatternProcessor.<init>:(Ljava/lang/String;)V
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
        16: .line 148
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            lload 9 /* initialTime */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.PatternProcessor.setPrevFileTime:(J)V
        17: .line 149
            aload 0 /* this */
            aload 2 /* fileName */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileName:Ljava/lang/String;
        18: .line 150
            aload 0 /* this */
            aload 3 /* pattern */
            invokestatic org.apache.logging.log4j.core.appender.rolling.FileExtension.lookupForFile:(Ljava/lang/String;)Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileExtension:Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
        19: .line 151
            return
        end local 19 // java.nio.ByteBuffer buffer
        end local 18 // boolean writeHeader
        end local 17 // java.lang.String fileGroup
        end local 16 // java.lang.String fileOwner
        end local 15 // java.lang.String filePermissions
        end local 14 // org.apache.logging.log4j.core.Layout layout
        end local 13 // java.lang.String advertiseURI
        end local 12 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        end local 11 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        end local 9 // long initialTime
        end local 7 // long size
        end local 6 // boolean createOnDemand
        end local 5 // boolean append
        end local 4 // java.io.OutputStream os
        end local 3 // java.lang.String pattern
        end local 2 // java.lang.String fileName
        end local 1 // org.apache.logging.log4j.core.LoggerContext loggerContext
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   20     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   20     1     loggerContext  Lorg/apache/logging/log4j/core/LoggerContext;
            0   20     2          fileName  Ljava/lang/String;
            0   20     3           pattern  Ljava/lang/String;
            0   20     4                os  Ljava/io/OutputStream;
            0   20     5            append  Z
            0   20     6    createOnDemand  Z
            0   20     7              size  J
            0   20     9       initialTime  J
            0   20    11  triggeringPolicy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            0   20    12  rolloverStrategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            0   20    13      advertiseURI  Ljava/lang/String;
            0   20    14            layout  Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;
            0   20    15   filePermissions  Ljava/lang/String;
            0   20    16         fileOwner  Ljava/lang/String;
            0   20    17         fileGroup  Ljava/lang/String;
            0   20    18       writeHeader  Z
            0   20    19            buffer  Ljava/nio/ByteBuffer;
    Signature: (Lorg/apache/logging/log4j/core/LoggerContext;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZZJJLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/nio/ByteBuffer;)V
    MethodParameters:
                  Name  Flags
      loggerContext     final
      fileName          final
      pattern           final
      os                final
      append            final
      createOnDemand    final
      size              final
      initialTime       final
      triggeringPolicy  final
      rolloverStrategy  final
      advertiseURI      final
      layout            final
      filePermissions   final
      fileOwner         final
      fileGroup         final
      writeHeader       final
      buffer            final

  public void initialize();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 155
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialized:Z
            ifne 12
         1: .line 156
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "Initializing triggering policy {}"
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 157
            aload 0 /* this */
            iconst_1
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialized:Z
         3: .line 158
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            aload 0 /* this */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy.initialize:(Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;)V
         4: .line 159
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            instanceof org.apache.logging.log4j.core.LifeCycle
            ifeq 6
         5: .line 160
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            checkcast org.apache.logging.log4j.core.LifeCycle
            invokeinterface org.apache.logging.log4j.core.LifeCycle.start:()V
         6: .line 162
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            instanceof org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy
            ifeq 12
         7: .line 164
            new java.io.File
            dup
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getFileName:()Ljava/lang/String;
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 1 /* file */
        start local 1 // java.io.File file
         8: .line 165
            aload 1 /* file */
            invokevirtual java.io.File.exists:()Z
            ifeq 11
         9: .line 166
            aload 0 /* this */
            aload 1 /* file */
            invokevirtual java.io.File.length:()J
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
        10: .line 167
            goto 12
        11: .line 168
      StackMap locals: java.io.File
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            checkcast org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy
            invokeinterface org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy.clearCurrentFileName:()V
        end local 1 // java.io.File file
        12: .line 172
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            8   12     1  file  Ljava/io/File;

  public static org.apache.logging.log4j.core.appender.rolling.RollingFileManager getFileManager(java.lang.String, java.lang.String, boolean, boolean, org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy, org.apache.logging.log4j.core.appender.rolling.RolloverStrategy, java.lang.String, org.apache.logging.log4j.core.Layout<? extends java.io.Serializable>, int, boolean, boolean, java.lang.String, java.lang.String, java.lang.String, org.apache.logging.log4j.core.config.Configuration);
    descriptor: (Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;IZZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/logging/log4j/core/config/Configuration;)Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=19, locals=16, args_size=15
        start local 0 // java.lang.String fileName
        start local 1 // java.lang.String pattern
        start local 2 // boolean append
        start local 3 // boolean bufferedIO
        start local 4 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy policy
        start local 5 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy strategy
        start local 6 // java.lang.String advertiseURI
        start local 7 // org.apache.logging.log4j.core.Layout layout
        start local 8 // int bufferSize
        start local 9 // boolean immediateFlush
        start local 10 // boolean createOnDemand
        start local 11 // java.lang.String filePermissions
        start local 12 // java.lang.String fileOwner
        start local 13 // java.lang.String fileGroup
        start local 14 // org.apache.logging.log4j.core.config.Configuration configuration
         0: .line 200
            aload 5 /* strategy */
            instanceof org.apache.logging.log4j.core.appender.rolling.DirectWriteRolloverStrategy
            ifeq 3
            aload 0 /* fileName */
            ifnull 3
         1: .line 201
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "The fileName attribute must not be specified with the DirectWriteRolloverStrategy"
            invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;)V
         2: .line 202
            aconst_null
            areturn
         3: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* fileName */
            ifnonnull 4
            aload 1 /* pattern */
            goto 5
      StackMap locals:
      StackMap stack:
         4: aload 0 /* fileName */
      StackMap locals:
      StackMap stack: java.lang.String
         5: astore 15 /* name */
        start local 15 // java.lang.String name
         6: .line 205
            ldc Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            aload 15 /* name */
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData
            dup
            aload 0 /* fileName */
            aload 1 /* pattern */
            iload 2 /* append */
         7: .line 206
            iload 3 /* bufferedIO */
            aload 4 /* policy */
            aload 5 /* strategy */
            aload 6 /* advertiseURI */
            aload 7 /* layout */
            iload 8 /* bufferSize */
            iload 9 /* immediateFlush */
            iload 10 /* createOnDemand */
         8: .line 207
            aload 11 /* filePermissions */
            aload 12 /* fileOwner */
            aload 13 /* fileGroup */
            aload 14 /* configuration */
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData.<init>:(Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout;IZZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/logging/log4j/core/config/Configuration;)V
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.factory:Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager$RollingFileManagerFactory;
         9: .line 205
            invokestatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getManager:(Ljava/lang/String;Ljava/lang/Object;Lorg/apache/logging/log4j/core/appender/ManagerFactory;)Lorg/apache/logging/log4j/core/appender/OutputStreamManager;
            invokestatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.narrow:(Ljava/lang/Class;Lorg/apache/logging/log4j/core/appender/AbstractManager;)Lorg/apache/logging/log4j/core/appender/AbstractManager;
            checkcast org.apache.logging.log4j.core.appender.rolling.RollingFileManager
            areturn
        end local 15 // java.lang.String name
        end local 14 // org.apache.logging.log4j.core.config.Configuration configuration
        end local 13 // java.lang.String fileGroup
        end local 12 // java.lang.String fileOwner
        end local 11 // java.lang.String filePermissions
        end local 10 // boolean createOnDemand
        end local 9 // boolean immediateFlush
        end local 8 // int bufferSize
        end local 7 // org.apache.logging.log4j.core.Layout layout
        end local 6 // java.lang.String advertiseURI
        end local 5 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy strategy
        end local 4 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy policy
        end local 3 // boolean bufferedIO
        end local 2 // boolean append
        end local 1 // java.lang.String pattern
        end local 0 // java.lang.String fileName
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0         fileName  Ljava/lang/String;
            0   10     1          pattern  Ljava/lang/String;
            0   10     2           append  Z
            0   10     3       bufferedIO  Z
            0   10     4           policy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            0   10     5         strategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            0   10     6     advertiseURI  Ljava/lang/String;
            0   10     7           layout  Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;
            0   10     8       bufferSize  I
            0   10     9   immediateFlush  Z
            0   10    10   createOnDemand  Z
            0   10    11  filePermissions  Ljava/lang/String;
            0   10    12        fileOwner  Ljava/lang/String;
            0   10    13        fileGroup  Ljava/lang/String;
            0   10    14    configuration  Lorg/apache/logging/log4j/core/config/Configuration;
            6   10    15             name  Ljava/lang/String;
    Signature: (Ljava/lang/String;Ljava/lang/String;ZZLorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;Ljava/lang/String;Lorg/apache/logging/log4j/core/Layout<+Ljava/io/Serializable;>;IZZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/apache/logging/log4j/core/config/Configuration;)Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
    MethodParameters:
                 Name  Flags
      fileName         final
      pattern          final
      append           final
      bufferedIO       final
      policy           final
      strategy         final
      advertiseURI     final
      layout           final
      bufferSize       final
      immediateFlush   final
      createOnDemand   final
      filePermissions  final
      fileOwner        final
      fileGroup        final
      configuration    final

  public java.lang.String getFileName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 216
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            instanceof org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy
            ifeq 2
         1: .line 217
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            checkcast org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy
            aload 0 /* this */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.DirectFileRolloverStrategy.getCurrentFileName:(Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;)Ljava/lang/String;
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileName:Ljava/lang/String;
         2: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileName:Ljava/lang/String;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  public org.apache.logging.log4j.core.appender.rolling.FileExtension getFileExtension();
    descriptor: ()Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 223
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.fileExtension:Lorg/apache/logging/log4j/core/appender/rolling/FileExtension;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  protected synchronized void write(byte[], int, int, boolean);
    descriptor: ([BIIZ)V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // byte[] bytes
        start local 2 // int offset
        start local 3 // int length
        start local 4 // boolean immediateFlush
         0: .line 230
            aload 0 /* this */
            aload 1 /* bytes */
            iload 2 /* offset */
            iload 3 /* length */
            iload 4 /* immediateFlush */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.write:([BIIZ)V
         1: .line 231
            return
        end local 4 // boolean immediateFlush
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] bytes
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    2     1           bytes  [B
            0    2     2          offset  I
            0    2     3          length  I
            0    2     4  immediateFlush  Z
    MethodParameters:
                Name  Flags
      bytes           final
      offset          final
      length          final
      immediateFlush  final

  protected synchronized void writeToDestination(byte[], int, int);
    descriptor: ([BII)V
    flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // byte[] bytes
        start local 2 // int offset
        start local 3 // int length
         0: .line 235
            aload 0 /* this */
            dup
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
            iload 3 /* length */
            i2l
            ladd
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
         1: .line 236
            aload 0 /* this */
            aload 1 /* bytes */
            iload 2 /* offset */
            iload 3 /* length */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.writeToDestination:([BII)V
         2: .line 237
            return
        end local 3 // int length
        end local 2 // int offset
        end local 1 // byte[] bytes
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    3     1   bytes  [B
            0    3     2  offset  I
            0    3     3  length  I
    MethodParameters:
        Name  Flags
      bytes   final
      offset  final
      length  final

  public boolean isRenameEmptyFiles();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 240
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.renameEmptyFiles:Z
            ireturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  public void setRenameEmptyFiles(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // boolean renameEmptyFiles
         0: .line 244
            aload 0 /* this */
            iload 1 /* renameEmptyFiles */
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.renameEmptyFiles:Z
         1: .line 245
            return
        end local 1 // boolean renameEmptyFiles
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    2     1  renameEmptyFiles  Z
    MethodParameters:
                  Name  Flags
      renameEmptyFiles  final

  public long getFileSize();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 252
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.byteBuffer:Ljava/nio/ByteBuffer;
            invokevirtual java.nio.ByteBuffer.position:()I
            i2l
            ladd
            lreturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  public long getFileTime();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 260
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialTime:J
            lreturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  public synchronized void checkRollover(org.apache.logging.log4j.core.LogEvent);
    descriptor: (Lorg/apache/logging/log4j/core/LogEvent;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.LogEvent event
         0: .line 268
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            aload 1 /* event */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy.isTriggeringEvent:(Lorg/apache/logging/log4j/core/LogEvent;)Z
            ifeq 2
         1: .line 269
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rollover:()V
         2: .line 271
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.logging.log4j.core.LogEvent event
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    3     1  event  Lorg/apache/logging/log4j/core/LogEvent;
    MethodParameters:
       Name  Flags
      event  final

  public boolean releaseSub(long, java.util.concurrent.TimeUnit);
    descriptor: (JLjava/util/concurrent/TimeUnit;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=11, args_size=3
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit timeUnit
         0: .line 275
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "Shutting down RollingFileManager {}"
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getName:()Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 276
            iconst_1
            istore 4 /* stopped */
        start local 4 // boolean stopped
         2: .line 277
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            instanceof org.apache.logging.log4j.core.LifeCycle2
            ifeq 5
         3: .line 278
            iload 4 /* stopped */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            checkcast org.apache.logging.log4j.core.LifeCycle2
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokeinterface org.apache.logging.log4j.core.LifeCycle2.stop:(JLjava/util/concurrent/TimeUnit;)Z
            iand
            istore 4 /* stopped */
         4: .line 279
            goto 8
      StackMap locals: int
      StackMap stack:
         5: aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            instanceof org.apache.logging.log4j.core.LifeCycle
            ifeq 8
         6: .line 280
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            checkcast org.apache.logging.log4j.core.LifeCycle
            invokeinterface org.apache.logging.log4j.core.LifeCycle.stop:()V
         7: .line 281
            iload 4 /* stopped */
            iconst_1
            iand
            istore 4 /* stopped */
         8: .line 283
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokespecial org.apache.logging.log4j.core.appender.FileManager.releaseSub:(JLjava/util/concurrent/TimeUnit;)Z
            ifeq 9
            iload 4 /* stopped */
            ifeq 9
            iconst_1
            goto 10
      StackMap locals:
      StackMap stack:
         9: iconst_0
      StackMap locals:
      StackMap stack: int
        10: istore 5 /* status */
        start local 5 // boolean status
        11: .line 284
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.shutdown:()V
        12: .line 287
            aload 3 /* timeUnit */
            lload 1 /* timeout */
            invokevirtual java.util.concurrent.TimeUnit.toMillis:(J)J
            lstore 6 /* millis */
        start local 6 // long millis
        13: .line 288
            ldc 100
            lload 6 /* millis */
            lcmp
            ifge 14
            lload 6 /* millis */
            goto 15
      StackMap locals: int long
      StackMap stack:
        14: ldc 100
      StackMap locals:
      StackMap stack: long
        15: lstore 8 /* waitInterval */
        start local 8 // long waitInterval
        16: .line 290
            iconst_1
            istore 10 /* count */
        start local 10 // int count
        17: goto 20
        18: .line 291
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            lload 8 /* waitInterval */
            iload 10 /* count */
            i2l
            lmul
            getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
            invokeinterface java.util.concurrent.ExecutorService.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        19: .line 290
            iinc 10 /* count */ 1
      StackMap locals:
      StackMap stack:
        20: iload 10 /* count */
            iconst_3
            if_icmpgt 21
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.isTerminated:()Z
            ifeq 18
        end local 10 // int count
        21: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.isTerminated:()Z
            ifeq 24
        22: .line 294
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "All asynchronous threads have terminated"
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;)V
        23: .line 295
            goto 43
        24: .line 296
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.shutdownNow:()Ljava/util/List;
            pop
        25: .line 298
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokeinterface java.util.concurrent.ExecutorService.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        26: .line 299
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.isTerminated:()Z
            ifeq 29
        27: .line 300
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "All asynchronous threads have terminated"
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;)V
        28: .line 301
            goto 43
        29: .line 302
      StackMap locals:
      StackMap stack:
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager shutting down but some asynchronous services may not have completed"
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;)V
        30: .line 304
            goto 43
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        31: pop
        32: .line 305
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager stopped but some asynchronous services may not have completed."
            invokeinterface org.apache.logging.log4j.Logger.warn:(Ljava/lang/String;)V
        end local 8 // long waitInterval
        end local 6 // long millis
        33: .line 308
            goto 43
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingFileManager long java.util.concurrent.TimeUnit int int
      StackMap stack: java.lang.InterruptedException
        34: pop
        35: .line 309
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.shutdownNow:()Ljava/util/List;
            pop
        36: .line 311
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            lload 1 /* timeout */
            aload 3 /* timeUnit */
            invokeinterface java.util.concurrent.ExecutorService.awaitTermination:(JLjava/util/concurrent/TimeUnit;)Z
            pop
        37: .line 312
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            invokeinterface java.util.concurrent.ExecutorService.isTerminated:()Z
            ifeq 42
        38: .line 313
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "All asynchronous threads have terminated"
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;)V
        39: .line 315
            goto 42
      StackMap locals:
      StackMap stack: java.lang.InterruptedException
        40: pop
        41: .line 316
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager stopped but some asynchronous services may not have completed."
            invokeinterface org.apache.logging.log4j.Logger.warn:(Ljava/lang/String;)V
        42: .line 319
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
            invokevirtual java.lang.Thread.interrupt:()V
        43: .line 321
      StackMap locals:
      StackMap stack:
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager shutdown completed with status {}"
            iload 5 /* status */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
        44: .line 322
            iload 5 /* status */
            ireturn
        end local 5 // boolean status
        end local 4 // boolean stopped
        end local 3 // java.util.concurrent.TimeUnit timeUnit
        end local 1 // long timeout
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   45     0          this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   45     1       timeout  J
            0   45     3      timeUnit  Ljava/util/concurrent/TimeUnit;
            2   45     4       stopped  Z
           11   45     5        status  Z
           13   33     6        millis  J
           16   33     8  waitInterval  J
           17   21    10         count  I
      Exception table:
        from    to  target  type
          25    30      31  Class java.lang.InterruptedException
          12    33      34  Class java.lang.InterruptedException
          36    39      40  Class java.lang.InterruptedException
    MethodParameters:
          Name  Flags
      timeout   final
      timeUnit  final

  public synchronized void rollover(java.util.Date, java.util.Date);
    descriptor: (Ljava/util/Date;Ljava/util/Date;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // java.util.Date prevFileTime
        start local 2 // java.util.Date prevRollTime
         0: .line 326
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getPatternProcessor:()Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            aload 1 /* prevFileTime */
            invokevirtual java.util.Date.getTime:()J
            invokevirtual org.apache.logging.log4j.core.appender.rolling.PatternProcessor.setPrevFileTime:(J)V
         1: .line 327
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getPatternProcessor:()Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            aload 2 /* prevRollTime */
            invokevirtual java.util.Date.getTime:()J
            invokevirtual org.apache.logging.log4j.core.appender.rolling.PatternProcessor.setCurrentFileTime:(J)V
         2: .line 328
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rollover:()V
         3: .line 329
            return
        end local 2 // java.util.Date prevRollTime
        end local 1 // java.util.Date prevFileTime
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    4     1  prevFileTime  Ljava/util/Date;
            0    4     2  prevRollTime  Ljava/util/Date;
    MethodParameters:
              Name  Flags
      prevFileTime  
      prevRollTime  

  public synchronized void rollover();
    descriptor: ()V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 332
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.hasOutputStream:()Z
            ifne 2
         1: .line 333
            return
         2: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rollover:(Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;)Z
            ifeq 9
         3: .line 337
            aload 0 /* this */
            lconst_0
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.size:J
         4: .line 338
            aload 0 /* this */
            invokestatic java.lang.System.currentTimeMillis:()J
            putfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.initialTime:J
         5: .line 339
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.createFileAfterRollover:()V
         6: .line 340
            goto 9
      StackMap locals:
      StackMap stack: java.io.IOException
         7: astore 1 /* e */
        start local 1 // java.io.IOException e
         8: .line 341
            aload 0 /* this */
            ldc "Failed to create file after rollover"
            aload 1 /* e */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.logError:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.io.IOException e
         9: .line 344
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            8    9     1     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           3     6       7  Class java.io.IOException

  protected void createFileAfterRollover();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 347
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.createOutputStream:()Ljava/io/OutputStream;
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.setOutputStream:(Ljava/io/OutputStream;)V
         1: .line 348
            return
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
    Exceptions:
      throws java.io.IOException

  public org.apache.logging.log4j.core.appender.rolling.PatternProcessor getPatternProcessor();
    descriptor: ()Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 355
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  public void setTriggeringPolicy(org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy);
    descriptor: (Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
         0: .line 359
            aload 1 /* triggeringPolicy */
            aload 0 /* this */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy.initialize:(Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;)V
         1: .line 360
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            astore 2 /* policy */
        start local 2 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy policy
         2: .line 361
            iconst_0
            istore 3 /* count */
        start local 3 // int count
         3: .line 362
            iconst_0
            istore 4 /* policyUpdated */
        start local 4 // boolean policyUpdated
         4: .line 364
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy int int
      StackMap stack:
            iinc 3 /* count */ 1
         5: .line 365
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicyUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            aload 1 /* triggeringPolicy */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
            dup
            istore 4 /* policyUpdated */
            ifne 8
         6: .line 366
            iload 3 /* count */
            iconst_3
         7: .line 363
            if_icmplt 4
         8: .line 367
      StackMap locals:
      StackMap stack:
            iload 4 /* policyUpdated */
            ifeq 14
         9: .line 368
            aload 1 /* triggeringPolicy */
            instanceof org.apache.logging.log4j.core.LifeCycle
            ifeq 11
        10: .line 369
            aload 1 /* triggeringPolicy */
            checkcast org.apache.logging.log4j.core.LifeCycle
            invokeinterface org.apache.logging.log4j.core.LifeCycle.start:()V
        11: .line 371
      StackMap locals:
      StackMap stack:
            aload 2 /* policy */
            instanceof org.apache.logging.log4j.core.LifeCycle
            ifeq 16
        12: .line 372
            aload 2 /* policy */
            checkcast org.apache.logging.log4j.core.LifeCycle
            invokeinterface org.apache.logging.log4j.core.LifeCycle.stop:()V
        13: .line 374
            goto 16
        14: .line 375
      StackMap locals:
      StackMap stack:
            aload 1 /* triggeringPolicy */
            instanceof org.apache.logging.log4j.core.LifeCycle
            ifeq 16
        15: .line 376
            aload 1 /* triggeringPolicy */
            checkcast org.apache.logging.log4j.core.LifeCycle
            invokeinterface org.apache.logging.log4j.core.LifeCycle.stop:()V
        16: .line 379
      StackMap locals:
      StackMap stack:
            return
        end local 4 // boolean policyUpdated
        end local 3 // int count
        end local 2 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy policy
        end local 1 // org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy triggeringPolicy
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   17     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   17     1  triggeringPolicy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            2   17     2            policy  Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            3   17     3             count  I
            4   17     4     policyUpdated  Z
    MethodParameters:
                  Name  Flags
      triggeringPolicy  final

  public void setRolloverStrategy(org.apache.logging.log4j.core.appender.rolling.RolloverStrategy);
    descriptor: (Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
         0: .line 382
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategyUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            aload 1 /* rolloverStrategy */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         1: .line 383
            return
        end local 1 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy rolloverStrategy
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    2     1  rolloverStrategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
    MethodParameters:
                  Name  Flags
      rolloverStrategy  final

  public void setPatternProcessor(org.apache.logging.log4j.core.appender.rolling.PatternProcessor);
    descriptor: (Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.appender.rolling.PatternProcessor patternProcessor
         0: .line 386
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessorUpdater:Ljava/util/concurrent/atomic/AtomicReferenceFieldUpdater;
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.patternProcessor:Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            aload 1 /* patternProcessor */
            invokevirtual java.util.concurrent.atomic.AtomicReferenceFieldUpdater.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
            pop
         1: .line 387
            return
        end local 1 // org.apache.logging.log4j.core.appender.rolling.PatternProcessor patternProcessor
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    2     1  patternProcessor  Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
    MethodParameters:
                  Name  Flags
      patternProcessor  final

  public <T extends org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy> T getTriggeringPolicy();
    descriptor: ()Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 397
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.triggeringPolicy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
    Signature: <T::Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;>()TT;

  public org.apache.logging.log4j.core.appender.rolling.RolloverStrategy getRolloverStrategy();
    descriptor: ()Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
         0: .line 405
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.rolloverStrategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            areturn
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;

  private boolean rollover(org.apache.logging.log4j.core.appender.rolling.RolloverStrategy);
    descriptor: (Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy strategy
         0: .line 410
            iconst_0
            istore 2 /* releaseRequired */
        start local 2 // boolean releaseRequired
         1: .line 413
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.acquire:()V
         2: .line 414
            iconst_1
            istore 2 /* releaseRequired */
         3: .line 415
            goto 7
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingFileManager org.apache.logging.log4j.core.appender.rolling.RolloverStrategy int
      StackMap stack: java.lang.InterruptedException
         4: astore 3 /* e */
        start local 3 // java.lang.InterruptedException e
         5: .line 416
            aload 0 /* this */
            ldc "Thread interrupted while attempting to check rollover"
            aload 3 /* e */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.logError:(Ljava/lang/String;Ljava/lang/Throwable;)V
         6: .line 417
            iconst_0
            ireturn
        end local 3 // java.lang.InterruptedException e
         7: .line 420
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* success */
        start local 3 // boolean success
         8: .line 423
            aload 1 /* strategy */
            aload 0 /* this */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverStrategy.rollover:(Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;)Lorg/apache/logging/log4j/core/appender/rolling/RolloverDescription;
            astore 4 /* descriptor */
        start local 4 // org.apache.logging.log4j.core.appender.rolling.RolloverDescription descriptor
         9: .line 424
            aload 4 /* descriptor */
            ifnull 26
        10: .line 425
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.writeFooter:()V
        11: .line 426
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.closeOutputStream:()Z
            pop
        12: .line 427
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getSynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            ifnull 19
        13: .line 428
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager executing synchronous {}"
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getSynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
        14: .line 430
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getSynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            invokeinterface org.apache.logging.log4j.core.appender.rolling.action.Action.execute:()Z
            istore 3 /* success */
        15: .line 431
            goto 19
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingFileManager org.apache.logging.log4j.core.appender.rolling.RolloverStrategy int int org.apache.logging.log4j.core.appender.rolling.RolloverDescription
      StackMap stack: java.lang.Exception
        16: astore 5 /* ex */
        start local 5 // java.lang.Exception ex
        17: .line 432
            iconst_0
            istore 3 /* success */
        18: .line 433
            aload 0 /* this */
            ldc "Caught error in synchronous task"
            aload 5 /* ex */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.logError:(Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 5 // java.lang.Exception ex
        19: .line 437
      StackMap locals:
      StackMap stack:
            iload 3 /* success */
            ifeq 23
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getAsynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            ifnull 23
        20: .line 438
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "RollingFileManager executing async {}"
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getAsynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
        21: .line 439
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.asyncExecutor:Ljava/util/concurrent/ExecutorService;
            new org.apache.logging.log4j.core.appender.rolling.RollingFileManager$AsyncAction
            dup
            aload 4 /* descriptor */
            invokeinterface org.apache.logging.log4j.core.appender.rolling.RolloverDescription.getAsynchronous:()Lorg/apache/logging/log4j/core/appender/rolling/action/Action;
            aload 0 /* this */
            invokespecial org.apache.logging.log4j.core.appender.rolling.RollingFileManager$AsyncAction.<init>:(Lorg/apache/logging/log4j/core/appender/rolling/action/Action;Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;)V
            invokeinterface java.util.concurrent.ExecutorService.execute:(Ljava/lang/Runnable;)V
        22: .line 440
            iconst_0
            istore 2 /* releaseRequired */
        23: .line 446
      StackMap locals:
      StackMap stack:
            iload 2 /* releaseRequired */
            ifeq 25
        24: .line 447
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
        25: .line 442
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        26: .line 446
      StackMap locals:
      StackMap stack:
            iload 2 /* releaseRequired */
            ifeq 28
        27: .line 447
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
        28: .line 444
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // org.apache.logging.log4j.core.appender.rolling.RolloverDescription descriptor
        29: .line 445
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingFileManager org.apache.logging.log4j.core.appender.rolling.RolloverStrategy int int
      StackMap stack: java.lang.Throwable
            astore 6
        30: .line 446
            iload 2 /* releaseRequired */
            ifeq 32
        31: .line 447
            aload 0 /* this */
            getfield org.apache.logging.log4j.core.appender.rolling.RollingFileManager.semaphore:Ljava/util/concurrent/Semaphore;
            invokevirtual java.util.concurrent.Semaphore.release:()V
        32: .line 449
      StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingFileManager org.apache.logging.log4j.core.appender.rolling.RolloverStrategy int int top top java.lang.Throwable
      StackMap stack:
            aload 6
            athrow
        end local 3 // boolean success
        end local 2 // boolean releaseRequired
        end local 1 // org.apache.logging.log4j.core.appender.rolling.RolloverStrategy strategy
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   33     0             this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0   33     1         strategy  Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            1   33     2  releaseRequired  Z
            5    7     3                e  Ljava/lang/InterruptedException;
            8   33     3          success  Z
            9   29     4       descriptor  Lorg/apache/logging/log4j/core/appender/rolling/RolloverDescription;
           17   19     5               ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           1     3       4  Class java.lang.InterruptedException
          14    15      16  Class java.lang.Exception
           8    23      29  any
    MethodParameters:
          Name  Flags
      strategy  final

  public void updateData(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
        start local 1 // java.lang.Object data
         0: .line 622
            aload 1 /* data */
            checkcast org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData
            astore 2 /* factoryData */
        start local 2 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData factoryData
         1: .line 623
            aload 0 /* this */
            aload 2 /* factoryData */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData.getRolloverStrategy:()Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.setRolloverStrategy:(Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;)V
         2: .line 624
            aload 0 /* this */
            aload 2 /* factoryData */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData.getTriggeringPolicy:()Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.setTriggeringPolicy:(Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;)V
         3: .line 625
            aload 0 /* this */
            new org.apache.logging.log4j.core.appender.rolling.PatternProcessor
            dup
            aload 2 /* factoryData */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData.getPattern:()Ljava/lang/String;
            aload 0 /* this */
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.getPatternProcessor:()Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;
            invokespecial org.apache.logging.log4j.core.appender.rolling.PatternProcessor.<init>:(Ljava/lang/String;Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;)V
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.setPatternProcessor:(Lorg/apache/logging/log4j/core/appender/rolling/PatternProcessor;)V
         4: .line 626
            return
        end local 2 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData factoryData
        end local 1 // java.lang.Object data
        end local 0 // org.apache.logging.log4j.core.appender.rolling.RollingFileManager this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;
            0    5     1         data  Ljava/lang/Object;
            1    5     2  factoryData  Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager$FactoryData;
    MethodParameters:
      Name  Flags
      data  final

  private static long initialFileTime(java.io.File);
    descriptor: (Ljava/io/File;)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // java.io.File file
         0: .line 684
            aload 0 /* file */
            invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
            astore 1 /* path */
        start local 1 // java.nio.file.Path path
         1: .line 685
            aload 1 /* path */
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.exists:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
            ifeq 12
         2: .line 687
            aload 1 /* path */
            ldc Ljava/nio/file/attribute/BasicFileAttributes;
            iconst_0
            anewarray java.nio.file.LinkOption
            invokestatic java.nio.file.Files.readAttributes:(Ljava/nio/file/Path;Ljava/lang/Class;[Ljava/nio/file/LinkOption;)Ljava/nio/file/attribute/BasicFileAttributes;
            astore 2 /* attrs */
        start local 2 // java.nio.file.attribute.BasicFileAttributes attrs
         3: .line 688
            aload 2 /* attrs */
            invokeinterface java.nio.file.attribute.BasicFileAttributes.creationTime:()Ljava/nio/file/attribute/FileTime;
            astore 3 /* fileTime */
        start local 3 // java.nio.file.attribute.FileTime fileTime
         4: .line 689
            aload 3 /* fileTime */
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.EPOCH:Ljava/nio/file/attribute/FileTime;
            invokevirtual java.nio.file.attribute.FileTime.compareTo:(Ljava/nio/file/attribute/FileTime;)I
            ifle 8
         5: .line 690
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            ldc "Returning file creation time for {}"
            aload 0 /* file */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;)V
         6: .line 691
            aload 3 /* fileTime */
            invokevirtual java.nio.file.attribute.FileTime.toMillis:()J
         7: lreturn
         8: .line 693
      StackMap locals: java.nio.file.Path java.nio.file.attribute.BasicFileAttributes java.nio.file.attribute.FileTime
      StackMap stack:
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Unable to obtain file creation time for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* file */
            invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.info:(Ljava/lang/String;)V
        end local 3 // java.nio.file.attribute.FileTime fileTime
        end local 2 // java.nio.file.attribute.BasicFileAttributes attrs
         9: .line 694
            goto 12
      StackMap locals: java.io.File java.nio.file.Path
      StackMap stack: java.lang.Exception
        10: astore 2 /* ex */
        start local 2 // java.lang.Exception ex
        11: .line 695
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            new java.lang.StringBuilder
            dup
            ldc "Unable to calculate file creation time for "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* file */
            invokevirtual java.io.File.getAbsolutePath:()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;
            aload 2 /* ex */
            invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokeinterface org.apache.logging.log4j.Logger.info:(Ljava/lang/String;)V
        end local 2 // java.lang.Exception ex
        12: .line 698
      StackMap locals:
      StackMap stack:
            aload 0 /* file */
            invokevirtual java.io.File.lastModified:()J
            lreturn
        end local 1 // java.nio.file.Path path
        end local 0 // java.io.File file
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   13     0      file  Ljava/io/File;
            1   13     1      path  Ljava/nio/file/Path;
            3    9     2     attrs  Ljava/nio/file/attribute/BasicFileAttributes;
            4    9     3  fileTime  Ljava/nio/file/attribute/FileTime;
           11   12     2        ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           2     7      10  Class java.lang.Exception
           8     9      10  Class java.lang.Exception
    MethodParameters:
      Name  Flags
      file  final

  static org.apache.logging.log4j.Logger access$0();
    descriptor: ()Lorg/apache/logging/log4j/Logger;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 56
            getstatic org.apache.logging.log4j.core.appender.rolling.RollingFileManager.LOGGER:Lorg/apache/logging/log4j/Logger;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$1(org.apache.logging.log4j.core.appender.rolling.RollingFileManager, java.nio.file.Path);
    descriptor: (Lorg/apache/logging/log4j/core/appender/rolling/RollingFileManager;Ljava/nio/file/Path;)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingFileManager.defineAttributeView:(Ljava/nio/file/Path;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "RollingFileManager.java"
NestMembers:
  org.apache.logging.log4j.core.appender.rolling.RollingFileManager$AsyncAction  org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue  org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData  org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory
InnerClasses:
  private AsyncAction = org.apache.logging.log4j.core.appender.rolling.RollingFileManager$AsyncAction of org.apache.logging.log4j.core.appender.rolling.RollingFileManager
  private EmptyQueue = org.apache.logging.log4j.core.appender.rolling.RollingFileManager$EmptyQueue of org.apache.logging.log4j.core.appender.rolling.RollingFileManager
  private FactoryData = org.apache.logging.log4j.core.appender.rolling.RollingFileManager$FactoryData of org.apache.logging.log4j.core.appender.rolling.RollingFileManager
  private RollingFileManagerFactory = org.apache.logging.log4j.core.appender.rolling.RollingFileManager$RollingFileManagerFactory of org.apache.logging.log4j.core.appender.rolling.RollingFileManager