final class jdk.jfr.internal.SecuritySupport$SecureRecorderListener implements jdk.jfr.FlightRecorderListener
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.jfr.internal.SecuritySupport$SecureRecorderListener
super_class: java.lang.Object
{
private final java.security.AccessControlContext context;
descriptor: Ljava/security/AccessControlContext;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.jfr.FlightRecorderListener changeListener;
descriptor: Ljdk/jfr/FlightRecorderListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.security.AccessControlContext, jdk.jfr.FlightRecorderListener);
descriptor: (Ljava/security/AccessControlContext;Ljdk/jfr/FlightRecorderListener;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.security.AccessControlContext
putfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.context:Ljava/security/AccessControlContext;
2: aload 0
aload 2
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast jdk.jfr.FlightRecorderListener
putfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
0 4 1 context Ljava/security/AccessControlContext;
0 4 2 changeListener Ljdk/jfr/FlightRecorderListener;
MethodParameters:
Name Flags
context
changeListener
public void recordingStateChanged(jdk.jfr.Recording);
descriptor: (Ljdk/jfr/Recording;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic run(Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;Ljdk/jfr/Recording;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/jfr/internal/SecuritySupport$SecureRecorderListener.lambda$0(Ljdk/jfr/Recording;)Ljava/lang/Void; (7)
()Ljava/lang/Void;
1: aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.context:Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
0 4 1 recording Ljdk/jfr/Recording;
MethodParameters:
Name Flags
recording
public void recorderInitialized(jdk.jfr.FlightRecorder);
descriptor: (Ljdk/jfr/FlightRecorder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokedynamic run(Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;Ljdk/jfr/FlightRecorder;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
jdk/jfr/internal/SecuritySupport$SecureRecorderListener.lambda$1(Ljdk/jfr/FlightRecorder;)Ljava/lang/Void; (7)
()Ljava/lang/Void;
1: aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.context:Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
0 4 1 recorder Ljdk/jfr/FlightRecorder;
MethodParameters:
Name Flags
recorder
public jdk.jfr.FlightRecorderListener getChangeListener();
descriptor: ()Ljdk/jfr/FlightRecorderListener;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
private java.lang.Void lambda$0(jdk.jfr.Recording);
descriptor: (Ljdk/jfr/Recording;)Ljava/lang/Void;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 0 0: aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
aload 1
invokeinterface jdk.jfr.FlightRecorderListener.recordingStateChanged:(Ljdk/jfr/Recording;)V
1: goto 4
StackMap locals:
StackMap stack: java.lang.Throwable
2: pop
3: getstatic jdk.jfr.internal.LogTag.JFR:Ljdk/jfr/internal/LogTag;
getstatic jdk.jfr.internal.LogLevel.WARN:Ljdk/jfr/internal/LogLevel;
new java.lang.StringBuilder
dup
ldc "Unexpected exception in listener "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " at recording state change"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic jdk.jfr.internal.Logger.log:(Ljdk/jfr/internal/LogTag;Ljdk/jfr/internal/LogLevel;Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
private java.lang.Void lambda$1(jdk.jfr.FlightRecorder);
descriptor: (Ljdk/jfr/FlightRecorder;)Ljava/lang/Void;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=2, args_size=2
start local 0 0: aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
aload 1
invokeinterface jdk.jfr.FlightRecorderListener.recorderInitialized:(Ljdk/jfr/FlightRecorder;)V
1: goto 4
StackMap locals:
StackMap stack: java.lang.Throwable
2: pop
3: getstatic jdk.jfr.internal.LogTag.JFR:Ljdk/jfr/internal/LogTag;
getstatic jdk.jfr.internal.LogLevel.WARN:Ljdk/jfr/internal/LogLevel;
new java.lang.StringBuilder
dup
ldc "Unexpected exception in listener "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield jdk.jfr.internal.SecuritySupport$SecureRecorderListener.changeListener:Ljdk/jfr/FlightRecorderListener;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " when initializing FlightRecorder"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic jdk.jfr.internal.Logger.log:(Ljdk/jfr/internal/LogTag;Ljdk/jfr/internal/LogLevel;Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jfr/internal/SecuritySupport$SecureRecorderListener;
Exception table:
from to target type
0 1 2 Class java.lang.Throwable
}
SourceFile: "SecuritySupport.java"
NestHost: jdk.jfr.internal.SecuritySupport
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
final SecureRecorderListener = jdk.jfr.internal.SecuritySupport$SecureRecorderListener of jdk.jfr.internal.SecuritySupport