public class jdk.jfr.internal.consumer.EventDirectoryStream extends jdk.jfr.internal.consumer.AbstractEventStream
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.jfr.internal.consumer.EventDirectoryStream
super_class: jdk.jfr.internal.consumer.AbstractEventStream
{
private static final java.util.Comparator<? super jdk.jfr.consumer.RecordedEvent> EVENT_COMPARATOR;
descriptor: Ljava/util/Comparator;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Comparator<-Ljdk/jfr/consumer/RecordedEvent;>;
private final jdk.jfr.internal.consumer.RepositoryFiles repositoryFiles;
descriptor: Ljdk/jfr/internal/consumer/RepositoryFiles;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.jfr.internal.consumer.FileAccess fileAccess;
descriptor: Ljdk/jfr/internal/consumer/FileAccess;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private jdk.jfr.internal.consumer.ChunkParser currentParser;
descriptor: Ljdk/jfr/internal/consumer/ChunkParser;
flags: (0x0002) ACC_PRIVATE
private long currentChunkStartNanos;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private jdk.jfr.consumer.RecordedEvent[] sortedCache;
descriptor: [Ljdk/jfr/consumer/RecordedEvent;
flags: (0x0002) ACC_PRIVATE
private int threadExclusionLevel;
descriptor: I
flags: (0x0002) ACC_PRIVATE
protected volatile long maxSize;
descriptor: J
flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE
protected volatile java.time.Duration maxAge;
descriptor: Ljava/time/Duration;
flags: (0x0044) ACC_PROTECTED, ACC_VOLATILE
private volatile java.util.function.Consumer<java.lang.Long> onCompleteHandler;
descriptor: Ljava/util/function/Consumer;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
Signature: Ljava/util/function/Consumer<Ljava/lang/Long;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic jdk.jfr.internal.consumer.JdkJfrConsumer.instance:()Ljdk/jfr/internal/consumer/JdkJfrConsumer;
invokevirtual jdk.jfr.internal.consumer.JdkJfrConsumer.eventComparator:()Ljava/util/Comparator;
putstatic jdk.jfr.internal.consumer.EventDirectoryStream.EVENT_COMPARATOR:Ljava/util/Comparator;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.security.AccessControlContext, java.nio.file.Path, jdk.jfr.internal.consumer.FileAccess, jdk.jfr.internal.PlatformRecording, java.util.List<jdk.jfr.Configuration>);
descriptor: (Ljava/security/AccessControlContext;Ljava/nio/file/Path;Ljdk/jfr/internal/consumer/FileAccess;Ljdk/jfr/internal/PlatformRecording;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 4
aload 5
invokespecial jdk.jfr.internal.consumer.AbstractEventStream.<init>:(Ljava/security/AccessControlContext;Ljdk/jfr/internal/PlatformRecording;Ljava/util/List;)V
1: aload 0
iconst_0
putfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
2: aload 0
aload 3
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.jfr.internal.consumer.FileAccess
putfield jdk.jfr.internal.consumer.EventDirectoryStream.fileAccess:Ljdk/jfr/internal/consumer/FileAccess;
3: aload 0
new jdk.jfr.internal.consumer.RepositoryFiles
dup
aload 3
aload 2
invokespecial jdk.jfr.internal.consumer.RepositoryFiles.<init>:(Ljdk/jfr/internal/consumer/FileAccess;Ljava/nio/file/Path;)V
putfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
4: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 5 1 acc Ljava/security/AccessControlContext;
0 5 2 p Ljava/nio/file/Path;
0 5 3 fileAccess Ljdk/jfr/internal/consumer/FileAccess;
0 5 4 recording Ljdk/jfr/internal/PlatformRecording;
0 5 5 configurations Ljava/util/List<Ljdk/jfr/Configuration;>;
Exceptions:
throws java.io.IOException
Signature: (Ljava/security/AccessControlContext;Ljava/nio/file/Path;Ljdk/jfr/internal/consumer/FileAccess;Ljdk/jfr/internal/PlatformRecording;Ljava/util/List<Ljdk/jfr/Configuration;>;)V
MethodParameters:
Name Flags
acc
p
fileAccess
recording
configurations
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.setClosed:(Z)V
1: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
invokevirtual jdk.jfr.internal.consumer.Dispatcher.runCloseActions:()V
2: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.close:()V
3: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
ifnull 6
4: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.close:()V
5: aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getEndNanos:()J
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onComplete:(J)V
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
public void setChunkCompleteHandler(java.util.function.Consumer<java.lang.Long>);
descriptor: (Ljava/util/function/Consumer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.jfr.internal.consumer.EventDirectoryStream.onCompleteHandler:Ljava/util/function/Consumer;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 2 1 handler Ljava/util/function/Consumer<Ljava/lang/Long;>;
Signature: (Ljava/util/function/Consumer<Ljava/lang/Long;>;)V
MethodParameters:
Name Flags
handler
private void onComplete(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.onCompleteHandler:Ljava/util/function/Consumer;
astore 3
start local 3 1: aload 3
ifnull 3
2: aload 3
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.function.Consumer.accept:(Ljava/lang/Object;)V
3: StackMap locals: java.util.function.Consumer
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 4 1 epochNanos J
1 4 3 handler Ljava/util/function/Consumer<Ljava/lang/Long;>;
MethodParameters:
Name Flags
epochNanos
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.time.Instant.now:()Ljava/time/Instant;
invokestatic jdk.jfr.internal.Utils.timeToNanos:(Ljava/time/Instant;)J
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.start:(J)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
public void startAsync();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.time.Instant.now:()Ljava/time/Instant;
invokestatic jdk.jfr.internal.Utils.timeToNanos:(Ljava/time/Instant;)J
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.startAsync:(J)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
protected void process();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=1
start local 0 0: invokestatic jdk.jfr.internal.JVM.getJVM:()Ljdk/jfr/internal/JVM;
astore 1
start local 1 1: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 2
start local 2 2: aload 1
aload 2
invokevirtual jdk.jfr.internal.JVM.isExcluded:(Ljava/lang/Thread;)Z
ifeq 5
3: aload 0
dup
getfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
iconst_1
iadd
putfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
4: goto 6
5: StackMap locals: jdk.jfr.internal.JVM java.lang.Thread
StackMap stack:
aload 1
aload 2
invokevirtual jdk.jfr.internal.JVM.exclude:(Ljava/lang/Thread;)V
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.processRecursionSafe:()V
7: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
8: astore 3
9: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
ifle 12
10: aload 0
dup
getfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
iconst_1
isub
putfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
11: goto 13
12: StackMap locals: java.lang.Throwable
StackMap stack:
aload 1
aload 2
invokevirtual jdk.jfr.internal.JVM.include:(Ljava/lang/Thread;)V
13: StackMap locals:
StackMap stack:
aload 3
athrow
14: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
ifle 17
15: aload 0
dup
getfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
iconst_1
isub
putfield jdk.jfr.internal.consumer.EventDirectoryStream.threadExclusionLevel:I
16: goto 18
17: StackMap locals:
StackMap stack:
aload 1
aload 2
invokevirtual jdk.jfr.internal.JVM.include:(Ljava/lang/Thread;)V
18: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
1 19 1 jvm Ljdk/jfr/internal/JVM;
2 19 2 t Ljava/lang/Thread;
Exception table:
from to target type
2 8 8 any
Exceptions:
throws java.io.IOException
protected void processRecursionSafe();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=18, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
astore 2
start local 2 2: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.recording:Ljdk/jfr/internal/PlatformRecording;
ifnonnull 3
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.startTime:Ljava/time/Instant;
ifnonnull 3
iconst_0
goto 4
StackMap locals: jdk.jfr.internal.consumer.Dispatcher jdk.jfr.internal.consumer.Dispatcher
StackMap stack:
3: iconst_1
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: iload 4
ifeq 8
6: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.startNanos:J
iconst_1
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.firstPath:(JZ)Ljava/nio/file/Path;
astore 3
start local 3 7: goto 9
end local 3 8: StackMap locals: jdk.jfr.internal.consumer.EventDirectoryStream jdk.jfr.internal.consumer.Dispatcher jdk.jfr.internal.consumer.Dispatcher top int
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
iconst_1
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.lastPath:(Z)Ljava/nio/file/Path;
astore 3
start local 3 9: StackMap locals: jdk.jfr.internal.consumer.EventDirectoryStream jdk.jfr.internal.consumer.Dispatcher jdk.jfr.internal.consumer.Dispatcher java.nio.file.Path int
StackMap stack:
aload 3
ifnonnull 11
10: return
11: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
aload 3
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.getTimestamp:(Ljava/nio/file/Path;)J
putfield jdk.jfr.internal.consumer.EventDirectoryStream.currentChunkStartNanos:J
12: aconst_null
astore 5
aconst_null
astore 6
13: new jdk.jfr.internal.consumer.RecordingInput
dup
aload 3
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.fileAccess:Ljdk/jfr/internal/consumer/FileAccess;
invokespecial jdk.jfr.internal.consumer.RecordingInput.<init>:(Ljava/io/File;Ljdk/jfr/internal/consumer/FileAccess;)V
astore 7
start local 7 14: aload 0
new jdk.jfr.internal.consumer.ChunkParser
dup
aload 7
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
invokespecial jdk.jfr.internal.consumer.ChunkParser.<init>:(Ljdk/jfr/internal/consumer/RecordingInput;Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;)V
putfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
15: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getStartNanos:()J
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getChunkDuration:()J
ladd
lstore 8
start local 8 16: iload 4
ifeq 17
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.startNanos:J
goto 18
StackMap locals: jdk.jfr.internal.consumer.EventDirectoryStream jdk.jfr.internal.consumer.Dispatcher jdk.jfr.internal.consumer.Dispatcher java.nio.file.Path int java.lang.Throwable java.lang.Throwable jdk.jfr.internal.consumer.RecordingInput long
StackMap stack:
17: lload 8
StackMap locals:
StackMap stack: long
18: lstore 10
start local 10 19: aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.endTime:Ljava/time/Instant;
ifnull 20
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.endNanos:J
goto 21
StackMap locals: long
StackMap stack:
20: ldc 9223372036854775807
StackMap locals:
StackMap stack: long
21: lstore 12
start local 12 22: goto 63
23: StackMap locals: long
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
24: goto 41
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
astore 2
26: aload 2
aload 1
if_acmpeq 32
27: aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
astore 14
start local 14 28: aload 14
lload 10
putfield jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.filterStart:J
29: aload 14
lload 12
putfield jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.filterEnd:J
30: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
aload 14
iconst_1
invokevirtual jdk.jfr.internal.consumer.ChunkParser.updateConfiguration:(Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;Z)V
31: aload 2
astore 1
end local 14 32: StackMap locals:
StackMap stack:
aload 2
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
invokevirtual jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.isOrdered:()Z
ifeq 35
33: aload 0
aload 2
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.processOrdered:(Ljdk/jfr/internal/consumer/Dispatcher;)V
34: goto 36
35: StackMap locals:
StackMap stack:
aload 0
aload 2
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.processUnordered:(Ljdk/jfr/internal/consumer/Dispatcher;)Z
pop
36: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.resetCache:()V
37: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getStartNanos:()J
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getChunkDuration:()J
ladd
lload 12
lcmp
ifle 41
38: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.close:()V
39: aload 7
ifnull 40
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
40: StackMap locals:
StackMap stack:
return
41: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.isClosed:()Z
ifne 42
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isChunkFinished:()Z
ifeq 25
42: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.isLastChunk:()Z
ifeq 45
43: aload 7
ifnull 44
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
44: StackMap locals:
StackMap stack:
return
45: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.hasFixedPath:()Z
ifeq 48
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isFinalChunk:()Z
ifeq 48
46: aload 7
ifnull 47
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
47: StackMap locals:
StackMap stack:
return
48: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.isClosed:()Z
ifeq 51
49: aload 7
ifnull 50
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
50: StackMap locals:
StackMap stack:
return
51: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getChunkDuration:()J
lstore 14
start local 14 52: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getEndNanos:()J
lstore 16
start local 16 53: lload 14
lconst_0
lcmp
ifne 55
54: lload 14
lconst_1
ladd
lstore 14
55: StackMap locals: long long
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentChunkStartNanos:J
lload 14
ladd
iconst_1
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.nextPath:(JZ)Ljava/nio/file/Path;
astore 3
56: aload 3
ifnonnull 59
57: aload 7
ifnull 58
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
58: StackMap locals:
StackMap stack:
return
59: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.repositoryFiles:Ljdk/jfr/internal/consumer/RepositoryFiles;
aload 3
invokevirtual jdk.jfr.internal.consumer.RepositoryFiles.getTimestamp:(Ljava/nio/file/Path;)J
putfield jdk.jfr.internal.consumer.EventDirectoryStream.currentChunkStartNanos:J
60: aload 7
aload 3
invokevirtual jdk.jfr.internal.consumer.RecordingInput.setFile:(Ljava/nio/file/Path;)V
61: aload 0
lload 16
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onComplete:(J)V
62: aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.newChunkParser:()Ljdk/jfr/internal/consumer/ChunkParser;
putfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
end local 16 end local 14 63: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.isClosed:()Z
ifeq 23
end local 12 end local 10 end local 8 64: aload 7
ifnull 70
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
goto 70
StackMap locals: jdk.jfr.internal.consumer.EventDirectoryStream jdk.jfr.internal.consumer.Dispatcher jdk.jfr.internal.consumer.Dispatcher java.nio.file.Path int java.lang.Throwable java.lang.Throwable jdk.jfr.internal.consumer.RecordingInput
StackMap stack: java.lang.Throwable
65: astore 5
aload 7
ifnull 66
aload 7
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
end local 7 StackMap locals:
StackMap stack:
66: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
67: astore 6
aload 5
ifnonnull 68
aload 6
astore 5
goto 69
StackMap locals:
StackMap stack:
68: aload 5
aload 6
if_acmpeq 69
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
69: aload 5
athrow
70: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 71 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
1 71 1 lastDisp Ljdk/jfr/internal/consumer/Dispatcher;
2 71 2 disp Ljdk/jfr/internal/consumer/Dispatcher;
7 8 3 path Ljava/nio/file/Path;
9 71 3 path Ljava/nio/file/Path;
5 71 4 validStartTime Z
14 66 7 input Ljdk/jfr/internal/consumer/RecordingInput;
16 64 8 segmentStart J
19 64 10 filterStart J
22 64 12 filterEnd J
28 32 14 pc Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
52 63 14 durationNanos J
53 63 16 endChunkNanos J
Exception table:
from to target type
14 39 65 any
41 43 65 any
45 46 65 any
48 49 65 any
51 57 65 any
59 64 65 any
13 40 67 any
41 44 67 any
45 47 67 any
48 50 67 any
51 58 67 any
59 67 67 any
Exceptions:
throws java.io.IOException
private boolean isLastChunk();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.recording:Ljdk/jfr/internal/PlatformRecording;
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.recording:Ljdk/jfr/internal/PlatformRecording;
invokevirtual jdk.jfr.internal.PlatformRecording.getFinalChunkStartNanos:()J
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getStartNanos:()J
lcmp
iflt 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
private void processOrdered(jdk.jfr.internal.consumer.Dispatcher);
descriptor: (Ljdk/jfr/internal/consumer/Dispatcher;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
ifnonnull 2
1: aload 0
ldc 100000
anewarray jdk.jfr.consumer.RecordedEvent
putfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.readStreamingEvent:()Ljdk/jfr/consumer/RecordedEvent;
astore 3
start local 3 4: aload 3
ifnonnull 6
5: goto 10
6: StackMap locals: jdk.jfr.consumer.RecordedEvent
StackMap stack:
iload 2
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
arraylength
if_icmpne 8
7: aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
arraylength
iconst_2
imul
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
checkcast jdk.jfr.consumer.RecordedEvent[]
putfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
iload 2
iinc 2 1
aload 3
aastore
end local 3 9: goto 3
10: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
11: iload 2
ifne 14
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isChunkFinished:()Z
ifeq 14
12: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onFlush:()V
13: return
14: StackMap locals:
StackMap stack:
iload 2
iconst_1
if_icmple 16
15: aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
iconst_0
iload 2
getstatic jdk.jfr.internal.consumer.EventDirectoryStream.EVENT_COMPARATOR:Ljava/util/Comparator;
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;IILjava/util/Comparator;)V
16: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 17: goto 20
18: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.sortedCache:[Ljdk/jfr/consumer/RecordedEvent;
iload 3
aaload
invokevirtual jdk.jfr.internal.consumer.Dispatcher.dispatch:(Ljdk/jfr/consumer/RecordedEvent;)V
19: iinc 3 1
StackMap locals:
StackMap stack:
20: iload 3
iload 2
if_icmplt 18
end local 3 21: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onFlush:()V
22: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 23 1 c Ljdk/jfr/internal/consumer/Dispatcher;
3 23 2 index I
4 9 3 e Ljdk/jfr/consumer/RecordedEvent;
17 21 3 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
c
private boolean processUnordered(jdk.jfr.internal.consumer.Dispatcher);
descriptor: (Ljdk/jfr/internal/consumer/Dispatcher;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.readStreamingEvent:()Ljdk/jfr/consumer/RecordedEvent;
astore 2
start local 2 1: aload 2
ifnonnull 4
2: aload 0
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onFlush:()V
3: iconst_1
ireturn
4: StackMap locals: jdk.jfr.consumer.RecordedEvent
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventDirectoryStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventDirectoryStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
5: aload 1
aload 2
invokevirtual jdk.jfr.internal.consumer.Dispatcher.dispatch:(Ljdk/jfr/consumer/RecordedEvent;)V
end local 2 6: goto 0
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 7 1 c Ljdk/jfr/internal/consumer/Dispatcher;
1 6 2 e Ljdk/jfr/consumer/RecordedEvent;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
c
public void setMaxSize(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield jdk.jfr.internal.consumer.EventDirectoryStream.maxSize:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 2 1 maxSize J
MethodParameters:
Name Flags
maxSize
public void setMaxAge(java.time.Duration);
descriptor: (Ljava/time/Duration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jdk.jfr.internal.consumer.EventDirectoryStream.maxAge:Ljava/time/Duration;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventDirectoryStream;
0 2 1 maxAge Ljava/time/Duration;
MethodParameters:
Name Flags
maxAge
}
SourceFile: "EventDirectoryStream.java"
InnerClasses:
final ParserConfiguration = jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration of jdk.jfr.internal.consumer.ChunkParser