public final class jdk.jfr.internal.consumer.EventFileStream extends jdk.jfr.internal.consumer.AbstractEventStream
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.jfr.internal.consumer.EventFileStream
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.RecordingInput input;
descriptor: Ljdk/jfr/internal/consumer/RecordingInput;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private jdk.jfr.internal.consumer.ChunkParser currentParser;
descriptor: Ljdk/jfr/internal/consumer/ChunkParser;
flags: (0x0002) ACC_PRIVATE
private jdk.jfr.consumer.RecordedEvent[] cacheSorted;
descriptor: [Ljdk/jfr/consumer/RecordedEvent;
flags: (0x0002) ACC_PRIVATE
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.EventFileStream.EVENT_COMPARATOR:Ljava/util/Comparator;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.security.AccessControlContext, java.nio.file.Path);
descriptor: (Ljava/security/AccessControlContext;Ljava/nio/file/Path;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokespecial jdk.jfr.internal.consumer.AbstractEventStream.<init>:(Ljava/security/AccessControlContext;Ljdk/jfr/internal/PlatformRecording;Ljava/util/List;)V
1: aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
new jdk.jfr.internal.consumer.RecordingInput
dup
aload 2
invokeinterface java.nio.file.Path.toFile:()Ljava/io/File;
getstatic jdk.jfr.internal.consumer.FileAccess.UNPRIVILEGED:Ljdk/jfr/internal/consumer/FileAccess;
invokespecial jdk.jfr.internal.consumer.RecordingInput.<init>:(Ljava/io/File;Ljdk/jfr/internal/consumer/FileAccess;)V
putfield jdk.jfr.internal.consumer.EventFileStream.input:Ljdk/jfr/internal/consumer/RecordingInput;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/consumer/EventFileStream;
0 4 1 acc Ljava/security/AccessControlContext;
0 4 2 path Ljava/nio/file/Path;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
acc
path
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
lconst_0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.start:(J)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventFileStream;
public void startAsync();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
lconst_0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.startAsync:(J)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/jfr/internal/consumer/EventFileStream;
public void close();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual jdk.jfr.internal.consumer.EventFileStream.setClosed:(Z)V
1: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
invokevirtual jdk.jfr.internal.consumer.Dispatcher.runCloseActions:()V
2: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.input:Ljdk/jfr/internal/consumer/RecordingInput;
invokevirtual jdk.jfr.internal.consumer.RecordingInput.close:()V
3: goto 5
StackMap locals:
StackMap stack: java.io.IOException
4: pop
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/jfr/internal/consumer/EventFileStream;
Exception table:
from to target type
2 3 4 Class java.io.IOException
protected void process();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
astore 1
start local 1 1: lconst_0
lstore 2
start local 2 2: ldc 9223372036854775807
lstore 4
start local 4 3: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.startTime:Ljava/time/Instant;
ifnull 5
4: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.startNanos:J
lstore 2
5: StackMap locals: jdk.jfr.internal.consumer.Dispatcher long long
StackMap stack:
aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.endTime:Ljava/time/Instant;
ifnull 7
6: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.endNanos:J
lstore 4
7: StackMap locals:
StackMap stack:
aload 0
new jdk.jfr.internal.consumer.ChunkParser
dup
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.input:Ljdk/jfr/internal/consumer/RecordingInput;
aload 1
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.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
8: goto 25
9: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
10: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.getStartNanos:()J
lload 4
lcmp
ifle 13
11: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.close:()V
12: return
13: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.dispatcher:()Ljdk/jfr/internal/consumer/Dispatcher;
astore 1
14: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
lload 2
putfield jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.filterStart:J
15: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
lload 4
putfield jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.filterEnd:J
16: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
iconst_1
invokevirtual jdk.jfr.internal.consumer.ChunkParser.updateConfiguration:(Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;Z)V
17: aload 1
getfield jdk.jfr.internal.consumer.Dispatcher.parserConfiguration:Ljdk/jfr/internal/consumer/ChunkParser$ParserConfiguration;
invokevirtual jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration.isOrdered:()Z
ifeq 20
18: aload 0
aload 1
invokevirtual jdk.jfr.internal.consumer.EventFileStream.processOrdered:(Ljdk/jfr/internal/consumer/Dispatcher;)V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.jfr.internal.consumer.EventFileStream.processUnordered:(Ljdk/jfr/internal/consumer/Dispatcher;)V
21: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.resetCache:()V
22: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.isClosed:()Z
ifne 23
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isLastChunk:()Z
ifeq 24
23: StackMap locals:
StackMap stack:
return
24: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.nextChunkParser:()Ljdk/jfr/internal/consumer/ChunkParser;
putfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.isClosed:()Z
ifeq 9
26: return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Ljdk/jfr/internal/consumer/EventFileStream;
1 27 1 disp Ljdk/jfr/internal/consumer/Dispatcher;
2 27 2 start J
3 27 4 end J
Exceptions:
throws java.io.IOException
private void processOrdered(jdk.jfr.internal.consumer.Dispatcher);
descriptor: (Ljdk/jfr/internal/consumer/Dispatcher;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
ifnonnull 2
1: aload 0
sipush 10000
anewarray jdk.jfr.consumer.RecordedEvent
putfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: goto 13
start local 2 4: StackMap locals: jdk.jfr.consumer.RecordedEvent int
StackMap stack:
iload 3
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
arraylength
if_icmpne 8
5: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
astore 4
start local 4 6: aload 0
iconst_2
aload 4
arraylength
imul
anewarray jdk.jfr.consumer.RecordedEvent
putfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
7: aload 4
iconst_0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
iconst_0
aload 4
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
end local 4 8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
iload 3
iinc 3 1
aload 2
aastore
end local 2 9: StackMap locals: jdk.jfr.internal.consumer.EventFileStream jdk.jfr.internal.consumer.Dispatcher top int
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.readStreamingEvent:()Ljdk/jfr/consumer/RecordedEvent;
dup
astore 2
start local 2 10: ifnonnull 4
11: aload 0
aload 1
iload 3
invokevirtual jdk.jfr.internal.consumer.EventFileStream.dispatchOrdered:(Ljdk/jfr/internal/consumer/Dispatcher;I)V
12: iconst_0
istore 3
end local 2 13: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isChunkFinished:()Z
ifeq 9
14: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/jfr/internal/consumer/EventFileStream;
0 15 1 c Ljdk/jfr/internal/consumer/Dispatcher;
4 9 2 event Ljdk/jfr/consumer/RecordedEvent;
10 13 2 event Ljdk/jfr/consumer/RecordedEvent;
3 15 3 index I
6 8 4 tmp [Ljdk/jfr/consumer/RecordedEvent;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
c
private void dispatchOrdered(jdk.jfr.internal.consumer.Dispatcher, int);
descriptor: (Ljdk/jfr/internal/consumer/Dispatcher;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
1: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
iconst_0
iload 2
getstatic jdk.jfr.internal.consumer.EventFileStream.EVENT_COMPARATOR:Ljava/util/Comparator;
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;IILjava/util/Comparator;)V
2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.cacheSorted:[Ljdk/jfr/consumer/RecordedEvent;
iload 3
aaload
invokevirtual jdk.jfr.internal.consumer.Dispatcher.dispatch:(Ljdk/jfr/consumer/RecordedEvent;)V
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iload 2
if_icmplt 4
end local 3 7: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onFlush:()V
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/jfr/internal/consumer/EventFileStream;
0 9 1 c Ljdk/jfr/internal/consumer/Dispatcher;
0 9 2 index I
3 7 3 i I
MethodParameters:
Name Flags
c
index
private void processUnordered(jdk.jfr.internal.consumer.Dispatcher);
descriptor: (Ljdk/jfr/internal/consumer/Dispatcher;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
1: goto 9
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.readStreamingEvent:()Ljdk/jfr/consumer/RecordedEvent;
astore 2
start local 2 3: aload 2
ifnonnull 7
4: aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onFlush:()V
5: aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.ChunkParser.isChunkFinished:()Z
ifeq 9
6: return
7: StackMap locals: jdk.jfr.consumer.RecordedEvent
StackMap stack:
aload 0
aload 0
getfield jdk.jfr.internal.consumer.EventFileStream.currentParser:Ljdk/jfr/internal/consumer/ChunkParser;
invokevirtual jdk.jfr.internal.consumer.EventFileStream.onMetadata:(Ljdk/jfr/internal/consumer/ChunkParser;)V
8: aload 1
aload 2
invokevirtual jdk.jfr.internal.consumer.Dispatcher.dispatch:(Ljdk/jfr/consumer/RecordedEvent;)V
end local 2 9: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.jfr.internal.consumer.EventFileStream.isClosed:()Z
ifeq 2
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/jfr/internal/consumer/EventFileStream;
0 11 1 c Ljdk/jfr/internal/consumer/Dispatcher;
3 9 2 event Ljdk/jfr/consumer/RecordedEvent;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
c
}
SourceFile: "EventFileStream.java"
InnerClasses:
final ParserConfiguration = jdk.jfr.internal.consumer.ChunkParser$ParserConfiguration of jdk.jfr.internal.consumer.ChunkParser