class org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory implements org.apache.logging.log4j.core.appender.ManagerFactory<org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager, org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory;
public org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager createManager(java.lang.String, org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData);
descriptor: (Ljava/lang/String;Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$FactoryData;)Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager;
flags: (0x0001) ACC_PUBLIC
Code:
stack=22, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: lconst_0
lstore 4
start local 4 2: invokestatic java.lang.System.currentTimeMillis:()J
lstore 6
start local 6 3: aconst_null
astore 8
start local 8 4: aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.fileName:Ljava/lang/String;
ifnull 31
5: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 3
6: aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.append:Z
ifne 8
7: aload 3
invokevirtual java.io.File.delete:()Z
pop
8: StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory java.lang.String org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData java.io.File long long java.io.RandomAccessFile
StackMap stack:
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.append:Z
ifeq 9
aload 3
invokevirtual java.io.File.length:()J
goto 10
StackMap locals:
StackMap stack:
9: lconst_0
StackMap locals:
StackMap stack: long
10: lstore 4
11: aload 3
invokevirtual java.io.File.exists:()Z
ifeq 13
12: aload 3
invokevirtual java.io.File.lastModified:()J
lstore 6
13: StackMap locals:
StackMap stack:
aload 3
invokestatic org.apache.logging.log4j.core.util.FileUtils.makeParentDirs:(Ljava/io/File;)V
14: new java.io.RandomAccessFile
dup
aload 1
ldc "rw"
invokespecial java.io.RandomAccessFile.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 8
15: aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.append:Z
ifeq 20
16: aload 8
invokevirtual java.io.RandomAccessFile.length:()J
lstore 9
start local 9 17: invokestatic org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.access$0:()Lorg/apache/logging/log4j/Logger;
ldc "RandomAccessFile {} seek to {}"
aload 1
lload 9
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface org.apache.logging.log4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
18: aload 8
lload 9
invokevirtual java.io.RandomAccessFile.seek:(J)V
end local 9 19: goto 31
20: StackMap locals:
StackMap stack:
invokestatic org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.access$0:()Lorg/apache/logging/log4j/Logger;
ldc "RandomAccessFile {} set length to 0"
aload 1
invokeinterface org.apache.logging.log4j.Logger.trace:(Ljava/lang/String;Ljava/lang/Object;)V
21: aload 8
lconst_0
invokevirtual java.io.RandomAccessFile.setLength:(J)V
22: goto 31
StackMap locals:
StackMap stack: java.io.IOException
23: astore 9
start local 9 24: invokestatic org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.access$0:()Lorg/apache/logging/log4j/Logger;
new java.lang.StringBuilder
dup
ldc "Cannot access RandomAccessFile "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 9
invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;Ljava/lang/Throwable;)V
25: aload 8
ifnull 30
26: aload 8
invokevirtual java.io.RandomAccessFile.close:()V
27: goto 30
StackMap locals: org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory java.lang.String org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData java.io.File long long java.io.RandomAccessFile java.io.IOException
StackMap stack: java.io.IOException
28: astore 10
start local 10 29: invokestatic org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.access$0:()Lorg/apache/logging/log4j/Logger;
ldc "Cannot close RandomAccessFile {}"
aload 1
aload 10
invokeinterface org.apache.logging.log4j.Logger.error:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 10 30: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 9 31: StackMap locals:
StackMap stack:
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.append:Z
ifeq 32
aload 3
ifnull 32
aload 3
invokevirtual java.io.File.exists:()Z
ifeq 32
iconst_0
goto 33
StackMap locals:
StackMap stack:
32: iconst_1
StackMap locals:
StackMap stack: int
33: istore 9
start local 9 34: new org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager
dup
aload 2
invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.getLoggerContext:()Lorg/apache/logging/log4j/core/LoggerContext;
aload 8
aload 1
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.pattern:Ljava/lang/String;
35: invokestatic org.apache.logging.log4j.core.util.NullOutputStream.getInstance:()Lorg/apache/logging/log4j/core/util/NullOutputStream;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.append:Z
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.immediateFlush:Z
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.bufferSize:I
lload 4
lload 6
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.policy:Lorg/apache/logging/log4j/core/appender/rolling/TriggeringPolicy;
36: aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.strategy:Lorg/apache/logging/log4j/core/appender/rolling/RolloverStrategy;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.advertiseURI:Ljava/lang/String;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.layout:Lorg/apache/logging/log4j/core/Layout;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.filePermissions:Ljava/lang/String;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.fileOwner:Ljava/lang/String;
aload 2
getfield org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData.fileGroup:Ljava/lang/String;
iload 9
37: invokespecial org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.<init>:(Lorg/apache/logging/log4j/core/LoggerContext;Ljava/io/RandomAccessFile;Ljava/lang/String;Ljava/lang/String;Ljava/io/OutputStream;ZZIJJLorg/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;Z)V
astore 10
start local 10 38: aload 10
invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.isAttributeViewEnabled:()Z
ifeq 40
39: aload 10
aload 3
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
invokestatic org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager.access$1:(Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager;Ljava/nio/file/Path;)V
40: StackMap locals: int org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager
StackMap stack:
aload 10
areturn
end local 10 end local 9 end local 8 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory;
0 41 1 name Ljava/lang/String;
0 41 2 data Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$FactoryData;
1 41 3 file Ljava/io/File;
2 41 4 size J
3 41 6 time J
4 41 8 raf Ljava/io/RandomAccessFile;
17 19 9 length J
24 31 9 ex Ljava/io/IOException;
29 30 10 e Ljava/io/IOException;
34 41 9 writeHeader Z
38 41 10 rrm Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager;
Exception table:
from to target type
13 22 23 Class java.io.IOException
26 27 28 Class java.io.IOException
MethodParameters:
Name Flags
name final
data final
public java.lang.Object createManager(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
checkcast org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData
invokevirtual org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory.createManager:(Ljava/lang/String;Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$FactoryData;)Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/apache/logging/log4j/core/appender/ManagerFactory<Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager;Lorg/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManager$FactoryData;>;
SourceFile: "RollingRandomAccessFileManager.java"
NestHost: org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager
InnerClasses:
private FactoryData = org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$FactoryData of org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager
private RollingRandomAccessFileManagerFactory = org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager$RollingRandomAccessFileManagerFactory of org.apache.logging.log4j.core.appender.rolling.RollingRandomAccessFileManager