final class com.sun.jmx.mbeanserver.PerInterface<M>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.jmx.mbeanserver.PerInterface
super_class: java.lang.Object
{
private final java.lang.Class<?> mbeanInterface;
descriptor: Ljava/lang/Class;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/Class<*>;
private final com.sun.jmx.mbeanserver.MBeanIntrospector<M> introspector;
descriptor: Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/sun/jmx/mbeanserver/MBeanIntrospector<TM;>;
private final javax.management.MBeanInfo mbeanInfo;
descriptor: Ljavax/management/MBeanInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, M> getters;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;TM;>;
private final java.util.Map<java.lang.String, M> setters;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;TM;>;
private final java.util.Map<java.lang.String, java.util.List<com.sun.jmx.mbeanserver.PerInterface<M>.MethodAndSig>> ops;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/List<Lcom/sun/jmx/mbeanserver/PerInterface<TM;>.MethodAndSig;>;>;
void <init>(java.lang.Class<?>, com.sun.jmx.mbeanserver.MBeanIntrospector<M>, com.sun.jmx.mbeanserver.MBeanAnalyzer<M>, javax.management.MBeanInfo);
descriptor: (Ljava/lang/Class;Lcom/sun/jmx/mbeanserver/MBeanIntrospector;Lcom/sun/jmx/mbeanserver/MBeanAnalyzer;Ljavax/management/MBeanInfo;)V
flags: (0x0000)
Code:
stack=4, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic com.sun.jmx.mbeanserver.Util.newMap:()Ljava/util/Map;
putfield com.sun.jmx.mbeanserver.PerInterface.getters:Ljava/util/Map;
2: aload 0
invokestatic com.sun.jmx.mbeanserver.Util.newMap:()Ljava/util/Map;
putfield com.sun.jmx.mbeanserver.PerInterface.setters:Ljava/util/Map;
3: aload 0
invokestatic com.sun.jmx.mbeanserver.Util.newMap:()Ljava/util/Map;
putfield com.sun.jmx.mbeanserver.PerInterface.ops:Ljava/util/Map;
4: aload 0
aload 1
putfield com.sun.jmx.mbeanserver.PerInterface.mbeanInterface:Ljava/lang/Class;
5: aload 0
aload 2
putfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
6: aload 0
aload 4
putfield com.sun.jmx.mbeanserver.PerInterface.mbeanInfo:Ljavax/management/MBeanInfo;
7: aload 3
new com.sun.jmx.mbeanserver.PerInterface$InitMaps
dup
aload 0
invokespecial com.sun.jmx.mbeanserver.PerInterface$InitMaps.<init>:(Lcom/sun/jmx/mbeanserver/PerInterface;)V
invokevirtual com.sun.jmx.mbeanserver.MBeanAnalyzer.visit:(Lcom/sun/jmx/mbeanserver/MBeanAnalyzer$MBeanVisitor;)V
8: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 9 1 mbeanInterface Ljava/lang/Class<*>;
0 9 2 introspector Lcom/sun/jmx/mbeanserver/MBeanIntrospector<TM;>;
0 9 3 analyzer Lcom/sun/jmx/mbeanserver/MBeanAnalyzer<TM;>;
0 9 4 mbeanInfo Ljavax/management/MBeanInfo;
Signature: (Ljava/lang/Class<*>;Lcom/sun/jmx/mbeanserver/MBeanIntrospector<TM;>;Lcom/sun/jmx/mbeanserver/MBeanAnalyzer<TM;>;Ljavax/management/MBeanInfo;)V
MethodParameters:
Name Flags
mbeanInterface
introspector
analyzer
mbeanInfo
java.lang.Class<?> getMBeanInterface();
descriptor: ()Ljava/lang/Class;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.mbeanInterface:Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
Signature: ()Ljava/lang/Class<*>;
javax.management.MBeanInfo getMBeanInfo();
descriptor: ()Ljavax/management/MBeanInfo;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.mbeanInfo:Ljavax/management/MBeanInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
boolean isMXBean();
descriptor: ()Z
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.isMXBean:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
java.lang.Object getAttribute(java.lang.Object, java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.getters:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 4
start local 4 1: aload 4
ifnonnull 7
2: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.setters:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 5
3: new java.lang.StringBuilder
dup
ldc "Write-only attribute: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 4: goto 6
end local 5 5: StackMap locals: java.lang.Object
StackMap stack:
new java.lang.StringBuilder
dup
ldc "No such attribute: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 6: StackMap locals: java.lang.String
StackMap stack:
new javax.management.AttributeNotFoundException
dup
aload 5
invokespecial javax.management.AttributeNotFoundException.<init>:(Ljava/lang/String;)V
athrow
end local 5 7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 4
aload 1
aconst_null
aload 3
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM:(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 8 1 resource Ljava/lang/Object;
0 8 2 attribute Ljava/lang/String;
0 8 3 cookie Ljava/lang/Object;
1 8 4 cm TM;
4 5 5 msg Ljava/lang/String;
6 7 5 msg Ljava/lang/String;
Exceptions:
throws javax.management.AttributeNotFoundException, javax.management.MBeanException, javax.management.ReflectionException
MethodParameters:
Name Flags
resource
attribute
cookie
void setAttribute(java.lang.Object, java.lang.String, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x0000)
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.setters:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 1: aload 5
ifnonnull 7
2: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.getters:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 5
3: new java.lang.StringBuilder
dup
ldc "Read-only attribute: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 4: goto 6
end local 6 5: StackMap locals: java.lang.Object
StackMap stack:
new java.lang.StringBuilder
dup
ldc "No such attribute: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 6: StackMap locals: java.lang.String
StackMap stack:
new javax.management.AttributeNotFoundException
dup
aload 6
invokespecial javax.management.AttributeNotFoundException.<init>:(Ljava/lang/String;)V
athrow
end local 6 7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 2
aload 5
aload 1
aload 3
aload 4
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.invokeSetter:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
8: 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 9 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 9 1 resource Ljava/lang/Object;
0 9 2 attribute Ljava/lang/String;
0 9 3 value Ljava/lang/Object;
0 9 4 cookie Ljava/lang/Object;
1 9 5 cm TM;
4 5 6 msg Ljava/lang/String;
6 7 6 msg Ljava/lang/String;
Exceptions:
throws javax.management.AttributeNotFoundException, javax.management.InvalidAttributeValueException, javax.management.MBeanException, javax.management.ReflectionException
MethodParameters:
Name Flags
resource
attribute
value
cookie
java.lang.Object invoke(java.lang.Object, java.lang.String, java.lang.Object[], java.lang.String[], java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=7, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.ops:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.List
astore 6
start local 6 1: aload 6
ifnonnull 6
2: new java.lang.StringBuilder
dup
ldc "No such operation: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 3: aload 0
aload 7
aload 1
aload 2
aload 3
aload 4
4: aload 5
5: invokevirtual com.sun.jmx.mbeanserver.PerInterface.noSuchMethod:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 6: StackMap locals: java.util.List
StackMap stack:
aload 4
ifnonnull 8
7: iconst_0
anewarray java.lang.String
astore 4
8: StackMap locals:
StackMap stack:
aconst_null
astore 7
start local 7 9: aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 14
StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.Object java.lang.String java.lang.Object[] java.lang.String[] java.lang.Object java.util.List com.sun.jmx.mbeanserver.PerInterface$MethodAndSig top java.util.Iterator
StackMap stack:
10: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.jmx.mbeanserver.PerInterface$MethodAndSig
astore 8
start local 8 11: aload 8
getfield com.sun.jmx.mbeanserver.PerInterface$MethodAndSig.signature:[Ljava/lang/String;
aload 4
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 14
12: aload 8
astore 7
13: goto 15
end local 8 14: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
15: StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.Object java.lang.String java.lang.Object[] java.lang.String[] java.lang.Object java.util.List com.sun.jmx.mbeanserver.PerInterface$MethodAndSig
StackMap stack:
aload 7
ifnonnull 29
16: aload 0
aload 4
invokevirtual com.sun.jmx.mbeanserver.PerInterface.sigString:([Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 17: aload 6
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 23
18: new java.lang.StringBuilder
dup
ldc "Signature mismatch for operation "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " should be "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: aload 0
aload 6
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.jmx.mbeanserver.PerInterface$MethodAndSig
getfield com.sun.jmx.mbeanserver.PerInterface$MethodAndSig.signature:[Ljava/lang/String;
invokevirtual com.sun.jmx.mbeanserver.PerInterface.sigString:([Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 22: goto 26
end local 9 23: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Operation "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " exists but not with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
24: ldc "this signature: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 9
start local 9 26: StackMap locals: java.lang.String
StackMap stack:
aload 0
aload 9
aload 1
aload 2
aload 3
aload 4
27: aload 5
28: invokevirtual com.sun.jmx.mbeanserver.PerInterface.noSuchMethod:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 9 end local 8 29: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 7
getfield com.sun.jmx.mbeanserver.PerInterface$MethodAndSig.method:Ljava/lang/Object;
aload 1
aload 3
aload 5
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM:(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 7 end local 6 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 30 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 30 1 resource Ljava/lang/Object;
0 30 2 operation Ljava/lang/String;
0 30 3 params [Ljava/lang/Object;
0 30 4 signature [Ljava/lang/String;
0 30 5 cookie Ljava/lang/Object;
1 30 6 list Ljava/util/List<Lcom/sun/jmx/mbeanserver/PerInterface<TM;>.MethodAndSig;>;
3 6 7 msg Ljava/lang/String;
9 30 7 found Lcom/sun/jmx/mbeanserver/PerInterface<TM;>.MethodAndSig;
11 14 8 mas Lcom/sun/jmx/mbeanserver/PerInterface<TM;>.MethodAndSig;
17 29 8 badSig Ljava/lang/String;
22 23 9 msg Ljava/lang/String;
26 29 9 msg Ljava/lang/String;
Exceptions:
throws javax.management.MBeanException, javax.management.ReflectionException
MethodParameters:
Name Flags
resource
operation
params
signature
cookie
private java.lang.Object noSuchMethod(java.lang.String, java.lang.Object, java.lang.String, java.lang.Object[], java.lang.String[], java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;[Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=16, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: new java.lang.NoSuchMethodException
dup
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
aload 0
aload 5
invokevirtual com.sun.jmx.mbeanserver.PerInterface.sigString:([Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.NoSuchMethodException.<init>:(Ljava/lang/String;)V
1: astore 7
start local 7 2: new javax.management.ReflectionException
dup
aload 7
aload 1
invokespecial javax.management.ReflectionException.<init>:(Ljava/lang/Exception;Ljava/lang/String;)V
3: astore 8
start local 8 4: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.isMXBean:()Z
ifeq 6
5: aload 8
athrow
6: StackMap locals: java.lang.NoSuchMethodException javax.management.ReflectionException
StackMap stack:
new com.sun.jmx.mbeanserver.GetPropertyAction
dup
ldc "jmx.invoke.getters"
invokespecial com.sun.jmx.mbeanserver.GetPropertyAction.<init>:(Ljava/lang/String;)V
astore 9
start local 9 7: aload 9
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 10
start local 10 8: goto 11
end local 10 StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.String java.lang.Object java.lang.String java.lang.Object[] java.lang.String[] java.lang.Object java.lang.NoSuchMethodException javax.management.ReflectionException com.sun.jmx.mbeanserver.GetPropertyAction
StackMap stack: java.lang.Exception
9: pop
10: aconst_null
astore 10
start local 10 11: StackMap locals: java.lang.String
StackMap stack:
aload 10
ifnonnull 13
12: aload 8
athrow
13: StackMap locals:
StackMap stack:
iconst_0
istore 11
start local 11 14: aconst_null
astore 12
start local 12 15: aload 5
ifnull 16
aload 5
arraylength
ifne 23
16: StackMap locals: int java.util.Map
StackMap stack:
aload 3
ldc "get"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 18
17: iconst_3
istore 11
goto 20
18: StackMap locals:
StackMap stack:
aload 3
ldc "is"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 20
19: iconst_2
istore 11
20: StackMap locals:
StackMap stack:
iload 11
ifeq 27
21: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.getters:Ljava/util/Map;
astore 12
22: goto 27
StackMap locals:
StackMap stack:
23: aload 5
arraylength
iconst_1
if_icmpne 27
24: aload 3
ldc "set"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 27
25: iconst_3
istore 11
26: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.setters:Ljava/util/Map;
astore 12
27: StackMap locals:
StackMap stack:
iload 11
ifeq 35
28: aload 3
iload 11
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 13
start local 13 29: aload 12
aload 13
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 14
start local 14 30: aload 14
ifnull 35
aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 14
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.getName:(Ljava/lang/Object;)Ljava/lang/String;
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 35
31: aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 14
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.getSignature:(Ljava/lang/Object;)[Ljava/lang/String;
astore 15
start local 15 32: aload 5
ifnonnull 33
aload 15
arraylength
ifeq 34
33: StackMap locals: java.lang.String java.lang.Object java.lang.String[]
StackMap stack:
aload 5
aload 15
invokestatic java.util.Arrays.equals:([Ljava/lang/Object;[Ljava/lang/Object;)Z
ifeq 35
34: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.mbeanserver.PerInterface.introspector:Lcom/sun/jmx/mbeanserver/MBeanIntrospector;
aload 14
aload 2
aload 4
aload 6
invokevirtual com.sun.jmx.mbeanserver.MBeanIntrospector.invokeM:(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 15 end local 14 end local 13 35: StackMap locals:
StackMap stack:
aload 8
athrow
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 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 36 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 36 1 msg Ljava/lang/String;
0 36 2 resource Ljava/lang/Object;
0 36 3 operation Ljava/lang/String;
0 36 4 params [Ljava/lang/Object;
0 36 5 signature [Ljava/lang/String;
0 36 6 cookie Ljava/lang/Object;
2 36 7 nsme Ljava/lang/NoSuchMethodException;
4 36 8 exception Ljavax/management/ReflectionException;
7 36 9 act Lcom/sun/jmx/mbeanserver/GetPropertyAction;
8 9 10 invokeGettersS Ljava/lang/String;
11 36 10 invokeGettersS Ljava/lang/String;
14 36 11 rest I
15 36 12 methods Ljava/util/Map<Ljava/lang/String;TM;>;
29 35 13 attrName Ljava/lang/String;
30 35 14 method TM;
32 35 15 msig [Ljava/lang/String;
Exception table:
from to target type
7 8 9 Class java.lang.Exception
Exceptions:
throws javax.management.MBeanException, javax.management.ReflectionException
MethodParameters:
Name Flags
msg
resource
operation
params
signature
cookie
private java.lang.String sigString(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 1
ifnull 9
2: aload 1
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 8
StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.String[] java.lang.StringBuilder top int int java.lang.String[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 2
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
if_icmple 6
5: aload 2
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.String[] java.lang.StringBuilder java.lang.String int int java.lang.String[]
StackMap stack:
aload 2
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 7: iinc 4 1
StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.String[] java.lang.StringBuilder top int int java.lang.String[]
StackMap stack:
8: iload 4
iload 5
if_icmplt 3
9: StackMap locals: com.sun.jmx.mbeanserver.PerInterface java.lang.String[] java.lang.StringBuilder
StackMap stack:
aload 2
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/jmx/mbeanserver/PerInterface<TM;>;
0 10 1 signature [Ljava/lang/String;
1 10 2 b Ljava/lang/StringBuilder;
4 7 3 s Ljava/lang/String;
MethodParameters:
Name Flags
signature
}
Signature: <M:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "PerInterface.java"
NestMembers:
com.sun.jmx.mbeanserver.PerInterface$InitMaps com.sun.jmx.mbeanserver.PerInterface$MethodAndSig
InnerClasses:
abstract MBeanVisitor = com.sun.jmx.mbeanserver.MBeanAnalyzer$MBeanVisitor of com.sun.jmx.mbeanserver.MBeanAnalyzer
private InitMaps = com.sun.jmx.mbeanserver.PerInterface$InitMaps of com.sun.jmx.mbeanserver.PerInterface
private MethodAndSig = com.sun.jmx.mbeanserver.PerInterface$MethodAndSig of com.sun.jmx.mbeanserver.PerInterface