class sun.tracing.dtrace.DTraceProvider extends sun.tracing.ProviderSkeleton
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.tracing.dtrace.DTraceProvider
super_class: sun.tracing.ProviderSkeleton
{
private sun.tracing.dtrace.Activation activation;
descriptor: Lsun/tracing/dtrace/Activation;
flags: (0x0002) ACC_PRIVATE
private java.lang.Object proxy;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private static final java.lang.Class[] constructorParams;
descriptor: [Ljava/lang/Class;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.String proxyClassNamePrefix;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
ConstantValue: "$DTraceTracingProxy"
static final java.lang.String DEFAULT_MODULE;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "java_tracing"
static final java.lang.String DEFAULT_FUNCTION;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "unspecified"
private static long nextUniqueNumber;
descriptor: J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: ldc Lsun/tracing/dtrace/DTraceProvider;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.tracing.dtrace.DTraceProvider.$assertionsDisabled:Z
3: iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/reflect/InvocationHandler;
aastore
putstatic sun.tracing.dtrace.DTraceProvider.constructorParams:[Ljava/lang/Class;
4: lconst_0
putstatic sun.tracing.dtrace.DTraceProvider.nextUniqueNumber:J
return
LocalVariableTable:
Start End Slot Name Signature
private static synchronized long getUniqueNumber();
descriptor: ()J
flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=0, args_size=0
0: getstatic sun.tracing.dtrace.DTraceProvider.nextUniqueNumber:J
dup2
lconst_1
ladd
putstatic sun.tracing.dtrace.DTraceProvider.nextUniqueNumber:J
lreturn
LocalVariableTable:
Start End Slot Name Signature
protected sun.tracing.ProbeSkeleton createProbe(java.lang.reflect.Method);
descriptor: (Ljava/lang/reflect/Method;)Lsun/tracing/ProbeSkeleton;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new sun.tracing.dtrace.DTraceProbe
dup
aload 0
getfield sun.tracing.dtrace.DTraceProvider.proxy:Ljava/lang/Object;
aload 1
invokespecial sun.tracing.dtrace.DTraceProbe.<init>:(Ljava/lang/Object;Ljava/lang/reflect/Method;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/tracing/dtrace/DTraceProvider;
0 1 1 m Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
m
void <init>(java.lang.Class<? extends com.sun.tracing.Provider>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.tracing.ProviderSkeleton.<init>:(Ljava/lang/Class;)V
1: aload 0
ldc "$DTraceTracingProxy"
putfield sun.tracing.dtrace.DTraceProvider.proxyClassNamePrefix:Ljava/lang/String;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tracing/dtrace/DTraceProvider;
0 3 1 type Ljava/lang/Class<+Lcom/sun/tracing/Provider;>;
Signature: (Ljava/lang/Class<+Lcom/sun/tracing/Provider;>;)V
MethodParameters:
Name Flags
type
void setProxy(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield sun.tracing.dtrace.DTraceProvider.proxy:Ljava/lang/Object;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tracing/dtrace/DTraceProvider;
0 2 1 p Ljava/lang/Object;
MethodParameters:
Name Flags
p
void setActivation(sun.tracing.dtrace.Activation);
descriptor: (Lsun/tracing/dtrace/Activation;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield sun.tracing.dtrace.DTraceProvider.activation:Lsun/tracing/dtrace/Activation;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tracing/dtrace/DTraceProvider;
0 2 1 a Lsun/tracing/dtrace/Activation;
MethodParameters:
Name Flags
a
public void dispose();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.activation:Lsun/tracing/dtrace/Activation;
ifnull 3
1: aload 0
getfield sun.tracing.dtrace.DTraceProvider.activation:Lsun/tracing/dtrace/Activation;
aload 0
invokevirtual sun.tracing.dtrace.Activation.disposeProvider:(Lsun/tracing/dtrace/DTraceProvider;)V
2: aload 0
aconst_null
putfield sun.tracing.dtrace.DTraceProvider.activation:Lsun/tracing/dtrace/Activation;
3: StackMap locals:
StackMap stack:
aload 0
invokespecial sun.tracing.ProviderSkeleton.dispose:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tracing/dtrace/DTraceProvider;
public <T extends com.sun.tracing.Provider> T newProxyInstance();
descriptor: ()Lcom/sun/tracing/Provider;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=1
start local 0 0: invokestatic sun.tracing.dtrace.DTraceProvider.getUniqueNumber:()J
lstore 1
start local 1 1: ldc ""
astore 3
start local 3 2: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
invokevirtual java.lang.Class.getModifiers:()I
invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
ifne 8
3: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
start local 4 4: aload 4
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 5
start local 5 5: iload 5
iconst_m1
if_icmpne 6
ldc ""
goto 7
StackMap locals: sun.tracing.dtrace.DTraceProvider long java.lang.String java.lang.String int
StackMap stack:
6: aload 4
iconst_0
iload 5
iconst_1
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
7: astore 3
end local 5 end local 4 8: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 3
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "$DTraceTracingProxy"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 9: aconst_null
astore 5
start local 5 10: aload 4
iconst_1
anewarray java.lang.Class
dup
iconst_0
aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
aastore
11: invokestatic sun.misc.ProxyGenerator.generateProxyClass:(Ljava/lang/String;[Ljava/lang/Class;)[B
astore 6
start local 6 12: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
aload 4
13: aload 6
iconst_0
aload 6
arraylength
14: invokestatic sun.tracing.dtrace.JVM.defineClass:(Ljava/lang/ClassLoader;Ljava/lang/String;[BII)Ljava/lang/Class;
astore 5
15: goto 18
StackMap locals: sun.tracing.dtrace.DTraceProvider long java.lang.String java.lang.String java.lang.Class byte[]
StackMap stack: java.lang.ClassFormatError
16: astore 7
start local 7 17: new java.lang.IllegalArgumentException
dup
aload 7
invokevirtual java.lang.ClassFormatError.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 7 18: StackMap locals:
StackMap stack:
aload 5
getstatic sun.tracing.dtrace.DTraceProvider.constructorParams:[Ljava/lang/Class;
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 7
start local 7 19: aload 7
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tracing.Provider
20: areturn
end local 7 21: StackMap locals:
StackMap stack: java.lang.NoSuchMethodException
astore 7
start local 7 22: new java.lang.InternalError
dup
aload 7
invokevirtual java.lang.NoSuchMethodException.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 7 23: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
astore 7
start local 7 24: new java.lang.InternalError
dup
aload 7
invokevirtual java.lang.IllegalAccessException.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 7 25: StackMap locals:
StackMap stack: java.lang.InstantiationException
astore 7
start local 7 26: new java.lang.InternalError
dup
aload 7
invokevirtual java.lang.InstantiationException.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 7 27: StackMap locals:
StackMap stack: java.lang.reflect.InvocationTargetException
astore 7
start local 7 28: new java.lang.InternalError
dup
aload 7
invokevirtual java.lang.reflect.InvocationTargetException.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lsun/tracing/dtrace/DTraceProvider;
1 29 1 num J
2 29 3 proxyPkg Ljava/lang/String;
4 8 4 name Ljava/lang/String;
5 8 5 n I
9 29 4 proxyName Ljava/lang/String;
10 29 5 proxyClass Ljava/lang/Class<*>;
12 29 6 proxyClassFile [B
17 18 7 e Ljava/lang/ClassFormatError;
19 21 7 cons Ljava/lang/reflect/Constructor;
22 23 7 e Ljava/lang/NoSuchMethodException;
24 25 7 e Ljava/lang/IllegalAccessException;
26 27 7 e Ljava/lang/InstantiationException;
28 29 7 e Ljava/lang/reflect/InvocationTargetException;
Exception table:
from to target type
12 15 16 Class java.lang.ClassFormatError
18 20 21 Class java.lang.NoSuchMethodException
18 20 23 Class java.lang.IllegalAccessException
18 20 25 Class java.lang.InstantiationException
18 20 27 Class java.lang.reflect.InvocationTargetException
Signature: <T::Lcom/sun/tracing/Provider;>()TT;
protected void triggerProbe(java.lang.reflect.Method, java.lang.Object[]);
descriptor: (Ljava/lang/reflect/Method;[Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.tracing.dtrace.DTraceProvider.$assertionsDisabled:Z
ifne 1
new java.lang.AssertionError
dup
ldc "This method should have been overridden by the JVM"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
1: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tracing/dtrace/DTraceProvider;
0 2 1 method Ljava/lang/reflect/Method;
0 2 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
method
args
public java.lang.String getProviderName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial sun.tracing.ProviderSkeleton.getProviderName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/tracing/dtrace/DTraceProvider;
java.lang.String getModuleName();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
ldc Lcom/sun/tracing/dtrace/ModuleName;
ldc "java_tracing"
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationString:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tracing/dtrace/DTraceProvider;
static java.lang.String getProbeName(java.lang.reflect.Method);
descriptor: (Ljava/lang/reflect/Method;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc Lcom/sun/tracing/ProbeName;
aload 0
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationString:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 method Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
method
static java.lang.String getFunctionName(java.lang.reflect.Method);
descriptor: (Ljava/lang/reflect/Method;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ldc Lcom/sun/tracing/dtrace/FunctionName;
ldc "unspecified"
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationString:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 method Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
method
sun.tracing.dtrace.DTraceProbe[] getProbes();
descriptor: ()[Lsun/tracing/dtrace/DTraceProbe;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.probes:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
iconst_0
anewarray sun.tracing.dtrace.DTraceProbe
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast sun.tracing.dtrace.DTraceProbe[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/tracing/dtrace/DTraceProvider;
com.sun.tracing.dtrace.StabilityLevel getNameStabilityFor(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Lcom/sun/tracing/dtrace/StabilityLevel;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
aload 1
ldc "value"
aconst_null
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationValue:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tracing.dtrace.Attributes
astore 2
start local 2 2: aload 2
ifnonnull 4
3: getstatic com.sun.tracing.dtrace.StabilityLevel.PRIVATE:Lcom/sun/tracing/dtrace/StabilityLevel;
areturn
4: StackMap locals: com.sun.tracing.dtrace.Attributes
StackMap stack:
aload 2
invokeinterface com.sun.tracing.dtrace.Attributes.name:()Lcom/sun/tracing/dtrace/StabilityLevel;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tracing/dtrace/DTraceProvider;
0 5 1 type Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
2 5 2 attrs Lcom/sun/tracing/dtrace/Attributes;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lcom/sun/tracing/dtrace/StabilityLevel;
MethodParameters:
Name Flags
type
com.sun.tracing.dtrace.StabilityLevel getDataStabilityFor(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Lcom/sun/tracing/dtrace/StabilityLevel;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
aload 1
ldc "value"
aconst_null
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationValue:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tracing.dtrace.Attributes
astore 2
start local 2 2: aload 2
ifnonnull 4
3: getstatic com.sun.tracing.dtrace.StabilityLevel.PRIVATE:Lcom/sun/tracing/dtrace/StabilityLevel;
areturn
4: StackMap locals: com.sun.tracing.dtrace.Attributes
StackMap stack:
aload 2
invokeinterface com.sun.tracing.dtrace.Attributes.data:()Lcom/sun/tracing/dtrace/StabilityLevel;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tracing/dtrace/DTraceProvider;
0 5 1 type Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
2 5 2 attrs Lcom/sun/tracing/dtrace/Attributes;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lcom/sun/tracing/dtrace/StabilityLevel;
MethodParameters:
Name Flags
type
com.sun.tracing.dtrace.DependencyClass getDependencyClassFor(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Lcom/sun/tracing/dtrace/DependencyClass;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.tracing.dtrace.DTraceProvider.providerType:Ljava/lang/Class;
aload 1
ldc "value"
aconst_null
1: invokestatic sun.tracing.dtrace.DTraceProvider.getAnnotationValue:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.tracing.dtrace.Attributes
astore 2
start local 2 2: aload 2
ifnonnull 4
3: getstatic com.sun.tracing.dtrace.DependencyClass.UNKNOWN:Lcom/sun/tracing/dtrace/DependencyClass;
areturn
4: StackMap locals: com.sun.tracing.dtrace.Attributes
StackMap stack:
aload 2
invokeinterface com.sun.tracing.dtrace.Attributes.dependency:()Lcom/sun/tracing/dtrace/DependencyClass;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tracing/dtrace/DTraceProvider;
0 5 1 type Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
2 5 2 attrs Lcom/sun/tracing/dtrace/Attributes;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lcom/sun/tracing/dtrace/DependencyClass;
MethodParameters:
Name Flags
type
}
SourceFile: "DTraceProvider.java"