public abstract class javax.management.monitor.Monitor extends javax.management.NotificationBroadcasterSupport implements javax.management.monitor.MonitorMBean, javax.management.MBeanRegistration
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: javax.management.monitor.Monitor
super_class: javax.management.NotificationBroadcasterSupport
{
private java.lang.String observedAttribute;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private long granularityPeriod;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private boolean isActive;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final java.util.concurrent.atomic.AtomicLong sequenceNumber;
descriptor: Ljava/util/concurrent/atomic/AtomicLong;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean isComplexTypeAttribute;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String firstAttribute;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private final java.util.List<java.lang.String> remainingAttributes;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private static final java.security.AccessControlContext noPermissionsACC;
descriptor: Ljava/security/AccessControlContext;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private volatile java.security.AccessControlContext acc;
descriptor: Ljava/security/AccessControlContext;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private static final java.util.concurrent.ScheduledExecutorService scheduler;
descriptor: Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.Map<java.util.concurrent.ThreadPoolExecutor, java.lang.Void> executors;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/util/concurrent/ThreadPoolExecutor;Ljava/lang/Void;>;
private static final java.lang.Object executorsLock;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int maximumPoolSize;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.util.concurrent.Future<?> monitorFuture;
descriptor: Ljava/util/concurrent/Future;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/Future<*>;
private final javax.management.monitor.Monitor$SchedulerTask schedulerTask;
descriptor: Ljavax/management/monitor/Monitor$SchedulerTask;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private java.util.concurrent.ScheduledFuture<?> schedulerFuture;
descriptor: Ljava/util/concurrent/ScheduledFuture;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ScheduledFuture<*>;
protected static final int capacityIncrement;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 16
protected int elementCount;
descriptor: I
flags: (0x0004) ACC_PROTECTED
protected int alreadyNotified;
descriptor: I
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
java.lang.Deprecated()
protected int[] alreadyNotifieds;
descriptor: [I
flags: (0x0004) ACC_PROTECTED
protected javax.management.MBeanServer server;
descriptor: Ljavax/management/MBeanServer;
flags: (0x0004) ACC_PROTECTED
protected static final int RESET_FLAGS_ALREADY_NOTIFIED;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 0
protected static final int OBSERVED_OBJECT_ERROR_NOTIFIED;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 1
protected static final int OBSERVED_ATTRIBUTE_ERROR_NOTIFIED;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 2
protected static final int OBSERVED_ATTRIBUTE_TYPE_ERROR_NOTIFIED;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 4
protected static final int RUNTIME_ERROR_NOTIFIED;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 8
protected java.lang.String dbgTag;
descriptor: Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
RuntimeVisibleAnnotations:
java.lang.Deprecated()
final java.util.List<javax.management.monitor.Monitor$ObservedObject> observedObjects;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Ljavax/management/monitor/Monitor$ObservedObject;>;
static final int THRESHOLD_ERROR_NOTIFIED;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 16
static final java.lang.Integer INTEGER_ZERO;
descriptor: Ljava/lang/Integer;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$javax$management$monitor$Monitor$NumericalType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=3, args_size=0
0: new java.security.AccessControlContext
dup
1: iconst_1
anewarray java.security.ProtectionDomain
dup
iconst_0
new java.security.ProtectionDomain
dup
aconst_null
aconst_null
invokespecial java.security.ProtectionDomain.<init>:(Ljava/security/CodeSource;Ljava/security/PermissionCollection;)V
aastore
2: invokespecial java.security.AccessControlContext.<init>:([Ljava/security/ProtectionDomain;)V
3: putstatic javax.management.monitor.Monitor.noPermissionsACC:Ljava/security/AccessControlContext;
4: new javax.management.monitor.Monitor$DaemonThreadFactory
dup
ldc "Scheduler"
invokespecial javax.management.monitor.Monitor$DaemonThreadFactory.<init>:(Ljava/lang/String;)V
5: invokestatic java.util.concurrent.Executors.newSingleThreadScheduledExecutor:(Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ScheduledExecutorService;
6: putstatic javax.management.monitor.Monitor.scheduler:Ljava/util/concurrent/ScheduledExecutorService;
7: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
8: putstatic javax.management.monitor.Monitor.executors:Ljava/util/Map;
9: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic javax.management.monitor.Monitor.executorsLock:Ljava/lang/Object;
10: new com.sun.jmx.mbeanserver.GetPropertyAction
dup
ldc "jmx.x.monitor.maximum.pool.size"
invokespecial com.sun.jmx.mbeanserver.GetPropertyAction.<init>:(Ljava/lang/String;)V
11: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
astore 0
start local 0 12: aload 0
ifnull 14
13: aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.String.length:()I
ifne 16
14: StackMap locals: java.lang.String
StackMap stack:
bipush 10
putstatic javax.management.monitor.Monitor.maximumPoolSize:I
15: goto 33
16: StackMap locals:
StackMap stack:
bipush 10
istore 1
start local 1 17: aload 0
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
istore 1
18: goto 29
StackMap locals: java.lang.String int
StackMap stack: java.lang.NumberFormatException
19: astore 2
start local 2 20: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
invokeinterface java.lang.System$Logger.isLoggable:(Ljava/lang/System$Logger$Level;)Z
ifeq 28
21: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
22: ldc "Wrong value for jmx.x.monitor.maximum.pool.size system property"
23: aload 2
24: invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;Ljava/lang/Throwable;)V
25: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
26: ldc "jmx.x.monitor.maximum.pool.size defaults to 10"
27: invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
28: StackMap locals: java.lang.NumberFormatException
StackMap stack:
bipush 10
istore 1
end local 2 29: StackMap locals:
StackMap stack:
iload 1
iconst_1
if_icmpge 32
30: iconst_1
putstatic javax.management.monitor.Monitor.maximumPoolSize:I
31: goto 33
32: StackMap locals:
StackMap stack:
iload 1
putstatic javax.management.monitor.Monitor.maximumPoolSize:I
end local 1 end local 0 33: StackMap locals:
StackMap stack:
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
putstatic javax.management.monitor.Monitor.INTEGER_ZERO:Ljava/lang/Integer;
return
LocalVariableTable:
Start End Slot Name Signature
12 33 0 maximumPoolSizeStr Ljava/lang/String;
17 33 1 maximumPoolSizeTmp I
20 29 2 e Ljava/lang/NumberFormatException;
Exception table:
from to target type
17 18 19 Class java.lang.NumberFormatException
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
1: aload 0
ldc 10000
putfield javax.management.monitor.Monitor.granularityPeriod:J
2: aload 0
iconst_0
putfield javax.management.monitor.Monitor.isActive:Z
3: aload 0
new java.util.concurrent.atomic.AtomicLong
dup
invokespecial java.util.concurrent.atomic.AtomicLong.<init>:()V
putfield javax.management.monitor.Monitor.sequenceNumber:Ljava/util/concurrent/atomic/AtomicLong;
4: aload 0
iconst_0
putfield javax.management.monitor.Monitor.isComplexTypeAttribute:Z
5: aload 0
6: new java.util.concurrent.CopyOnWriteArrayList
dup
invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
putfield javax.management.monitor.Monitor.remainingAttributes:Ljava/util/List;
7: aload 0
getstatic javax.management.monitor.Monitor.noPermissionsACC:Ljava/security/AccessControlContext;
putfield javax.management.monitor.Monitor.acc:Ljava/security/AccessControlContext;
8: aload 0
new javax.management.monitor.Monitor$SchedulerTask
dup
aload 0
invokespecial javax.management.monitor.Monitor$SchedulerTask.<init>:(Ljavax/management/monitor/Monitor;)V
putfield javax.management.monitor.Monitor.schedulerTask:Ljavax/management/monitor/Monitor$SchedulerTask;
9: aload 0
iconst_0
putfield javax.management.monitor.Monitor.elementCount:I
10: aload 0
iconst_0
putfield javax.management.monitor.Monitor.alreadyNotified:I
11: aload 0
bipush 16
newarray 10
putfield javax.management.monitor.Monitor.alreadyNotifieds:[I
12: aload 0
ldc Ljavax/management/monitor/Monitor;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
putfield javax.management.monitor.Monitor.dbgTag:Ljava/lang/String;
13: aload 0
14: new java.util.concurrent.CopyOnWriteArrayList
dup
invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
putfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
15: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljavax/management/monitor/Monitor;
public javax.management.ObjectName preRegister(javax.management.MBeanServer, javax.management.ObjectName);
descriptor: (Ljavax/management/MBeanServer;Ljavax/management/ObjectName;)Ljavax/management/ObjectName;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
1: ldc "initialize the reference on the MBean server"
2: invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
3: aload 0
aload 1
putfield javax.management.monitor.Monitor.server:Ljavax/management/MBeanServer;
4: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavax/management/monitor/Monitor;
0 5 1 server Ljavax/management/MBeanServer;
0 5 2 name Ljavax/management/ObjectName;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
server
name
public void postRegister(java.lang.Boolean);
descriptor: (Ljava/lang/Boolean;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 registrationDone Ljava/lang/Boolean;
MethodParameters:
Name Flags
registrationDone
public void preDeregister();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
ldc "stop the monitor"
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
1: aload 0
invokevirtual javax.management.monitor.Monitor.stop:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/management/monitor/Monitor;
Exceptions:
throws java.lang.Exception
public void postDeregister();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
public abstract void start();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void stop();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public synchronized javax.management.ObjectName getObservedObject();
descriptor: ()Ljavax/management/ObjectName;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.management.monitor.Monitor$ObservedObject
invokevirtual javax.management.monitor.Monitor$ObservedObject.getObservedObject:()Ljavax/management/ObjectName;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/management/monitor/Monitor;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
public synchronized void setObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Null observed object"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 4
aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.containsObservedObject:(Ljavax/management/ObjectName;)Z
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.clear:()V
5: aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.addObservedObject:(Ljavax/management/ObjectName;)V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavax/management/monitor/Monitor;
0 7 1 object Ljavax/management/ObjectName;
Exceptions:
throws java.lang.IllegalArgumentException
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
object
public synchronized void addObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Null observed object"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.containsObservedObject:(Ljavax/management/ObjectName;)Z
ifeq 4
3: return
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.createObservedObject:(Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
astore 2
start local 2 5: aload 2
iconst_0
invokevirtual javax.management.monitor.Monitor$ObservedObject.setAlreadyNotified:(I)V
6: aload 2
getstatic javax.management.monitor.Monitor.INTEGER_ZERO:Ljava/lang/Integer;
invokevirtual javax.management.monitor.Monitor$ObservedObject.setDerivedGauge:(Ljava/lang/Object;)V
7: aload 2
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual javax.management.monitor.Monitor$ObservedObject.setDerivedGaugeTimeStamp:(J)V
8: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
aload 2
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
9: aload 0
invokevirtual javax.management.monitor.Monitor.createAlreadyNotified:()V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljavax/management/monitor/Monitor;
0 11 1 object Ljavax/management/ObjectName;
5 11 2 o Ljavax/management/monitor/Monitor$ObservedObject;
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
object
public synchronized void removeObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.getObservedObject:(Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
astore 2
start local 2 3: aload 2
ifnull 6
4: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
aload 2
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
5: aload 0
invokevirtual javax.management.monitor.Monitor.createAlreadyNotified:()V
6: StackMap locals: javax.management.monitor.Monitor$ObservedObject
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavax/management/monitor/Monitor;
0 7 1 object Ljavax/management/ObjectName;
3 7 2 o Ljavax/management/monitor/Monitor$ObservedObject;
MethodParameters:
Name Flags
object
public synchronized boolean containsObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)Z
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.getObservedObject:(Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavax/management/monitor/Monitor;
0 2 1 object Ljavax/management/ObjectName;
MethodParameters:
Name Flags
object
public synchronized javax.management.ObjectName[] getObservedObjects();
descriptor: ()[Ljavax/management/ObjectName;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.size:()I
anewarray javax.management.ObjectName
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: javax.management.ObjectName[] int
StackMap stack:
aload 1
iload 2
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
iload 2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.management.monitor.Monitor$ObservedObject
invokevirtual javax.management.monitor.Monitor$ObservedObject.getObservedObject:()Ljavax/management/ObjectName;
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 1
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavax/management/monitor/Monitor;
1 7 1 names [Ljavax/management/ObjectName;
2 6 2 i I
public synchronized java.lang.String getObservedAttribute();
descriptor: ()Ljava/lang/String;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
public void setObservedAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.IllegalArgumentException
dup
ldc "Null observed attribute"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
dup
astore 2
monitorenter
3: aload 0
getfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
ifnull 7
4: aload 0
getfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
5: aload 2
monitorexit
6: return
7: StackMap locals: javax.management.monitor.Monitor
StackMap stack:
aload 0
aload 1
putfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
8: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupIsComplexTypeAttribute:()V
9: iconst_0
istore 3
start local 3 10: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 15
StackMap locals: javax.management.monitor.Monitor java.lang.String javax.management.monitor.Monitor int top java.util.Iterator
StackMap stack:
11: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.management.monitor.Monitor$ObservedObject
astore 4
start local 4 12: aload 0
aload 4
iload 3
iinc 3 1
13: bipush 6
14: invokevirtual javax.management.monitor.Monitor.resetAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II)V
end local 4 15: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
end local 3 16: aload 2
monitorexit
17: goto 20
StackMap locals: javax.management.monitor.Monitor java.lang.String javax.management.monitor.Monitor
StackMap stack: java.lang.Throwable
18: aload 2
monitorexit
19: athrow
20: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Ljavax/management/monitor/Monitor;
0 21 1 attribute Ljava/lang/String;
10 16 3 index I
12 15 4 o Ljavax/management/monitor/Monitor$ObservedObject;
Exception table:
from to target type
3 6 18 any
7 17 18 any
18 19 18 any
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
attribute
public synchronized long getGranularityPeriod();
descriptor: ()J
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.granularityPeriod:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
public synchronized void setGranularityPeriod(long);
descriptor: (J)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifgt 2
1: new java.lang.IllegalArgumentException
dup
ldc "Nonpositive granularity period"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.granularityPeriod:J
lload 1
lcmp
ifne 4
3: return
4: StackMap locals:
StackMap stack:
aload 0
lload 1
putfield javax.management.monitor.Monitor.granularityPeriod:J
5: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifeq 11
6: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupFutures:()V
7: aload 0
getstatic javax.management.monitor.Monitor.scheduler:Ljava/util/concurrent/ScheduledExecutorService;
aload 0
getfield javax.management.monitor.Monitor.schedulerTask:Ljavax/management/monitor/Monitor$SchedulerTask;
8: lload 1
9: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
10: invokeinterface java.util.concurrent.ScheduledExecutorService.schedule:(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
putfield javax.management.monitor.Monitor.schedulerFuture:Ljava/util/concurrent/ScheduledFuture;
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljavax/management/monitor/Monitor;
0 12 1 period J
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
period
public synchronized boolean isActive();
descriptor: ()Z
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.isActive:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
void doStart();
descriptor: ()V
flags: (0x0000)
Code:
stack=6, locals=2, args_size=1
start local 0 0: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
ldc "start the monitor"
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
1: aload 0
dup
astore 1
monitorenter
2: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifeq 6
3: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
ldc "the monitor is already active"
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
4: aload 1
monitorexit
5: return
6: StackMap locals: javax.management.monitor.Monitor
StackMap stack:
aload 0
iconst_1
putfield javax.management.monitor.Monitor.isActive:Z
7: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupIsComplexTypeAttribute:()V
8: aload 0
invokestatic java.security.AccessController.getContext:()Ljava/security/AccessControlContext;
putfield javax.management.monitor.Monitor.acc:Ljava/security/AccessControlContext;
9: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupFutures:()V
10: aload 0
getfield javax.management.monitor.Monitor.schedulerTask:Ljavax/management/monitor/Monitor$SchedulerTask;
new javax.management.monitor.Monitor$MonitorTask
dup
aload 0
invokespecial javax.management.monitor.Monitor$MonitorTask.<init>:(Ljavax/management/monitor/Monitor;)V
invokevirtual javax.management.monitor.Monitor$SchedulerTask.setMonitorTask:(Ljavax/management/monitor/Monitor$MonitorTask;)V
11: aload 0
getstatic javax.management.monitor.Monitor.scheduler:Ljava/util/concurrent/ScheduledExecutorService;
aload 0
getfield javax.management.monitor.Monitor.schedulerTask:Ljavax/management/monitor/Monitor$SchedulerTask;
12: aload 0
invokevirtual javax.management.monitor.Monitor.getGranularityPeriod:()J
13: getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
14: invokeinterface java.util.concurrent.ScheduledExecutorService.schedule:(Ljava/lang/Runnable;JLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
putfield javax.management.monitor.Monitor.schedulerFuture:Ljava/util/concurrent/ScheduledFuture;
15: aload 1
monitorexit
16: goto 19
StackMap locals:
StackMap stack: java.lang.Throwable
17: aload 1
monitorexit
18: athrow
19: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljavax/management/monitor/Monitor;
Exception table:
from to target type
2 5 17 any
6 16 17 any
17 18 17 any
void doStop();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
ldc "stop the monitor"
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
1: aload 0
dup
astore 1
monitorenter
2: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 6
3: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
ldc "the monitor is not active"
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
4: aload 1
monitorexit
5: return
6: StackMap locals: javax.management.monitor.Monitor
StackMap stack:
aload 0
iconst_0
putfield javax.management.monitor.Monitor.isActive:Z
7: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupFutures:()V
8: aload 0
getstatic javax.management.monitor.Monitor.noPermissionsACC:Ljava/security/AccessControlContext;
putfield javax.management.monitor.Monitor.acc:Ljava/security/AccessControlContext;
9: aload 0
invokevirtual javax.management.monitor.Monitor.cleanupIsComplexTypeAttribute:()V
10: aload 1
monitorexit
11: goto 14
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 1
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljavax/management/monitor/Monitor;
Exception table:
from to target type
2 5 12 any
6 11 12 any
12 13 12 any
synchronized java.lang.Object getDerivedGauge(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)Ljava/lang/Object;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.getObservedObject:(Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: javax.management.monitor.Monitor$ObservedObject
StackMap stack:
2: aload 2
invokevirtual javax.management.monitor.Monitor$ObservedObject.getDerivedGauge:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/management/monitor/Monitor;
0 4 1 object Ljavax/management/ObjectName;
1 4 2 o Ljavax/management/monitor/Monitor$ObservedObject;
MethodParameters:
Name Flags
object
synchronized long getDerivedGaugeTimeStamp(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)J
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual javax.management.monitor.Monitor.getObservedObject:(Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
astore 2
start local 2 1: aload 2
ifnonnull 2
lconst_0
goto 3
StackMap locals: javax.management.monitor.Monitor$ObservedObject
StackMap stack:
2: aload 2
invokevirtual javax.management.monitor.Monitor$ObservedObject.getDerivedGaugeTimeStamp:()J
StackMap locals:
StackMap stack: long
3: lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/management/monitor/Monitor;
0 4 1 object Ljavax/management/ObjectName;
1 4 2 o Ljavax/management/monitor/Monitor$ObservedObject;
MethodParameters:
Name Flags
object
java.lang.Object getAttribute(javax.management.MBeanServerConnection, javax.management.ObjectName, java.lang.String);
descriptor: (Ljavax/management/MBeanServerConnection;Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=3, locals=13, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
dup
astore 5
monitorenter
1: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 5
2: new java.lang.IllegalArgumentException
dup
3: ldc "The monitor has been stopped"
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String top javax.management.monitor.Monitor
StackMap stack:
aload 3
aload 0
invokevirtual javax.management.monitor.Monitor.getObservedAttribute:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 9
6: new java.lang.IllegalArgumentException
dup
7: ldc "The observed attribute has been changed"
8: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
ifnonnull 11
aload 3
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 11
10: iconst_1
goto 12
StackMap locals:
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 4
start local 4 13: aload 5
monitorexit
14: goto 17
end local 4 StackMap locals:
StackMap stack: java.lang.Throwable
15: aload 5
monitorexit
16: athrow
start local 4 17: StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String int
StackMap stack:
iload 4
ifeq 22
18: aload 1
aload 2
invokeinterface javax.management.MBeanServerConnection.getMBeanInfo:(Ljavax/management/ObjectName;)Ljavax/management/MBeanInfo;
astore 5
start local 5 19: goto 23
end local 5 StackMap locals:
StackMap stack: javax.management.IntrospectionException
20: astore 6
start local 6 21: new java.lang.IllegalArgumentException
dup
aload 6
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 6 22: StackMap locals:
StackMap stack:
aconst_null
astore 5
start local 5 23: StackMap locals: javax.management.MBeanInfo
StackMap stack:
aload 0
dup
astore 7
monitorenter
24: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 28
25: new java.lang.IllegalArgumentException
dup
26: ldc "The monitor has been stopped"
27: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String int javax.management.MBeanInfo top javax.management.monitor.Monitor
StackMap stack:
aload 3
aload 0
invokevirtual javax.management.monitor.Monitor.getObservedAttribute:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 32
29: new java.lang.IllegalArgumentException
dup
30: ldc "The observed attribute has been changed"
31: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
32: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
ifnonnull 53
33: aload 3
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpeq 52
34: aload 5
invokevirtual javax.management.MBeanInfo.getAttributes:()[Ljavax/management/MBeanAttributeInfo;
astore 8
start local 8 35: aload 8
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 41
StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String int javax.management.MBeanInfo top javax.management.monitor.Monitor javax.management.MBeanAttributeInfo[] top int int javax.management.MBeanAttributeInfo[]
StackMap stack:
36: aload 12
iload 10
aaload
astore 9
start local 9 37: aload 3
aload 9
invokevirtual javax.management.MBeanAttributeInfo.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 40
38: aload 0
aload 3
putfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
39: goto 42
end local 9 40: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
41: iload 10
iload 11
if_icmplt 36
42: StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String int javax.management.MBeanInfo top javax.management.monitor.Monitor javax.management.MBeanAttributeInfo[]
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
ifnonnull 53
43: aload 3
ldc "\\."
iconst_m1
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 9
start local 9 44: aload 0
aload 9
iconst_0
aaload
putfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
45: iconst_1
istore 10
start local 10 46: goto 49
47: StackMap locals: java.lang.String[] int
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.remainingAttributes:Ljava/util/List;
aload 9
iload 10
aaload
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
48: iinc 10 1
StackMap locals:
StackMap stack:
49: iload 10
aload 9
arraylength
if_icmplt 47
end local 10 50: aload 0
iconst_1
putfield javax.management.monitor.Monitor.isComplexTypeAttribute:Z
end local 9 end local 8 51: goto 53
52: StackMap locals:
StackMap stack:
aload 0
aload 3
putfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
53: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
astore 6
start local 6 54: aload 7
monitorexit
55: goto 58
end local 6 StackMap locals:
StackMap stack: java.lang.Throwable
56: aload 7
monitorexit
57: athrow
start local 6 58: StackMap locals: javax.management.monitor.Monitor javax.management.MBeanServerConnection javax.management.ObjectName java.lang.String int javax.management.MBeanInfo java.lang.String
StackMap stack:
aload 1
aload 2
aload 6
invokeinterface javax.management.MBeanServerConnection.getAttribute:(Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
areturn
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 59 0 this Ljavax/management/monitor/Monitor;
0 59 1 mbsc Ljavax/management/MBeanServerConnection;
0 59 2 object Ljavax/management/ObjectName;
0 59 3 attribute Ljava/lang/String;
13 15 4 lookupMBeanInfo Z
17 59 4 lookupMBeanInfo Z
19 20 5 mbi Ljavax/management/MBeanInfo;
23 59 5 mbi Ljavax/management/MBeanInfo;
21 22 6 e Ljavax/management/IntrospectionException;
54 56 6 fa Ljava/lang/String;
58 59 6 fa Ljava/lang/String;
35 51 8 mbaiArray [Ljavax/management/MBeanAttributeInfo;
37 40 9 mbai Ljavax/management/MBeanAttributeInfo;
44 51 9 tokens [Ljava/lang/String;
46 50 10 i I
Exception table:
from to target type
1 14 15 any
15 16 15 any
18 19 20 Class javax.management.IntrospectionException
24 55 56 any
56 57 56 any
Exceptions:
throws javax.management.AttributeNotFoundException, javax.management.InstanceNotFoundException, javax.management.MBeanException, javax.management.ReflectionException, java.io.IOException
MethodParameters:
Name Flags
mbsc
object
attribute
java.lang.Comparable<?> getComparableFromAttribute(javax.management.ObjectName, java.lang.String, );
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Comparable;
flags: (0x0000)
Code:
stack=2, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield javax.management.monitor.Monitor.isComplexTypeAttribute:Z
ifeq 7
1: aload 3
astore 4
start local 4 2: aload 0
getfield javax.management.monitor.Monitor.remainingAttributes:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 5
StackMap locals: javax.management.monitor.Monitor javax.management.ObjectName java.lang.String java.lang.Object java.lang.Object top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 4: aload 4
aload 5
invokestatic com.sun.jmx.mbeanserver.Introspector.elementFromComplex:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
astore 4
end local 5 5: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 4
checkcast java.lang.Comparable
areturn
end local 4 7: StackMap locals: javax.management.monitor.Monitor javax.management.ObjectName java.lang.String java.lang.Object
StackMap stack:
aload 3
checkcast java.lang.Comparable
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljavax/management/monitor/Monitor;
0 8 1 object Ljavax/management/ObjectName;
0 8 2 attribute Ljava/lang/String;
0 8 3 value Ljava/lang/Object;
2 7 4 v Ljava/lang/Object;
4 5 5 attr Ljava/lang/String;
Exceptions:
throws javax.management.AttributeNotFoundException
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Comparable<*>;
MethodParameters:
Name Flags
object
attribute
value
boolean isComparableTypeValid(javax.management.ObjectName, java.lang.String, java.lang.Comparable<?>);
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Z
flags: (0x0000)
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
0 1 2 attribute Ljava/lang/String;
0 1 3 value Ljava/lang/Comparable<*>;
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable<*>;)Z
MethodParameters:
Name Flags
object
attribute
value
java.lang.String buildErrorNotification(javax.management.ObjectName, java.lang.String, java.lang.Comparable<?>);
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
0 1 2 attribute Ljava/lang/String;
0 1 3 value Ljava/lang/Comparable<*>;
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable<*>;)Ljava/lang/String;
MethodParameters:
Name Flags
object
attribute
value
void onErrorNotification(javax.management.monitor.MonitorNotification);
descriptor: (Ljavax/management/monitor/MonitorNotification;)V
flags: (0x0000)
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 notification Ljavax/management/monitor/MonitorNotification;
MethodParameters:
Name Flags
notification
java.lang.Comparable<?> getDerivedGaugeFromComparable(javax.management.ObjectName, java.lang.String, java.lang.Comparable<?>);
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljava/lang/Comparable;
flags: (0x0000)
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
0 1 2 attribute Ljava/lang/String;
0 1 3 value Ljava/lang/Comparable<*>;
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable<*>;)Ljava/lang/Comparable<*>;
MethodParameters:
Name Flags
object
attribute
value
javax.management.monitor.MonitorNotification buildAlarmNotification(javax.management.ObjectName, java.lang.String, java.lang.Comparable<?>);
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljavax/management/monitor/MonitorNotification;
flags: (0x0000)
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
0 1 2 attribute Ljava/lang/String;
0 1 3 value Ljava/lang/Comparable<*>;
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable<*>;)Ljavax/management/monitor/MonitorNotification;
MethodParameters:
Name Flags
object
attribute
value
boolean isThresholdTypeValid(javax.management.ObjectName, java.lang.String, java.lang.Comparable<?>);
descriptor: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Z
flags: (0x0000)
Code:
stack=1, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
0 1 2 attribute Ljava/lang/String;
0 1 3 value Ljava/lang/Comparable<*>;
Signature: (Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable<*>;)Z
MethodParameters:
Name Flags
object
attribute
value
static java.lang.Class<? extends java.lang.Number> classForType(javax.management.monitor.Monitor$NumericalType);
descriptor: (Ljavax/management/monitor/Monitor$NumericalType;)Ljava/lang/Class;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: invokestatic javax.management.monitor.Monitor.$SWITCH_TABLE$javax$management$monitor$Monitor$NumericalType:()[I
aload 0
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 2
3: 3
4: 4
5: 5
6: 6
default: 7
}
1: StackMap locals:
StackMap stack:
ldc Ljava/lang/Byte;
areturn
2: StackMap locals:
StackMap stack:
ldc Ljava/lang/Short;
areturn
3: StackMap locals:
StackMap stack:
ldc Ljava/lang/Integer;
areturn
4: StackMap locals:
StackMap stack:
ldc Ljava/lang/Long;
areturn
5: StackMap locals:
StackMap stack:
ldc Ljava/lang/Float;
areturn
6: StackMap locals:
StackMap stack:
ldc Ljava/lang/Double;
areturn
7: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
8: ldc "Unsupported numerical type"
9: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 type Ljavax/management/monitor/Monitor$NumericalType;
Signature: (Ljavax/management/monitor/Monitor$NumericalType;)Ljava/lang/Class<+Ljava/lang/Number;>;
MethodParameters:
Name Flags
type
static boolean isValidForType(, java.lang.Class<? extends java.lang.Number>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getstatic javax.management.monitor.Monitor.INTEGER_ZERO:Ljava/lang/Integer;
if_acmpeq 1
aload 1
aload 0
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 value Ljava/lang/Object;
0 2 1 c Ljava/lang/Class<+Ljava/lang/Number;>;
Signature: (Ljava/lang/Object;Ljava/lang/Class<+Ljava/lang/Number;>;)Z
MethodParameters:
Name Flags
value
c
synchronized javax.management.monitor.Monitor$ObservedObject getObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: javax.management.monitor.Monitor javax.management.ObjectName top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.management.monitor.Monitor$ObservedObject
astore 2
start local 2 2: aload 2
invokevirtual javax.management.monitor.Monitor$ObservedObject.getObservedObject:()Ljavax/management/ObjectName;
aload 1
invokevirtual javax.management.ObjectName.equals:(Ljava/lang/Object;)Z
ifeq 4
3: aload 2
areturn
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljavax/management/monitor/Monitor;
0 6 1 object Ljavax/management/ObjectName;
2 4 2 o Ljavax/management/monitor/Monitor$ObservedObject;
MethodParameters:
Name Flags
object
javax.management.monitor.Monitor$ObservedObject createObservedObject(javax.management.ObjectName);
descriptor: (Ljavax/management/ObjectName;)Ljavax/management/monitor/Monitor$ObservedObject;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new javax.management.monitor.Monitor$ObservedObject
dup
aload 1
invokespecial javax.management.monitor.Monitor$ObservedObject.<init>:(Ljavax/management/ObjectName;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljavax/management/monitor/Monitor;
0 1 1 object Ljavax/management/ObjectName;
MethodParameters:
Name Flags
object
synchronized void createAlreadyNotified();
descriptor: ()V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
invokeinterface java.util.List.size:()I
putfield javax.management.monitor.Monitor.elementCount:I
1: aload 0
aload 0
getfield javax.management.monitor.Monitor.elementCount:I
newarray 10
putfield javax.management.monitor.Monitor.alreadyNotifieds:[I
2: iconst_0
istore 1
start local 1 3: goto 6
4: StackMap locals: int
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.alreadyNotifieds:[I
iload 1
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
iload 1
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.management.monitor.Monitor$ObservedObject
invokevirtual javax.management.monitor.Monitor$ObservedObject.getAlreadyNotified:()I
iastore
5: iinc 1 1
StackMap locals:
StackMap stack:
6: iload 1
aload 0
getfield javax.management.monitor.Monitor.elementCount:I
if_icmplt 4
end local 1 7: aload 0
invokevirtual javax.management.monitor.Monitor.updateDeprecatedAlreadyNotified:()V
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljavax/management/monitor/Monitor;
3 7 1 i I
synchronized void updateDeprecatedAlreadyNotified();
descriptor: ()V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.elementCount:I
ifle 2
1: aload 0
aload 0
getfield javax.management.monitor.Monitor.alreadyNotifieds:[I
iconst_0
iaload
putfield javax.management.monitor.Monitor.alreadyNotified:I
goto 3
2: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield javax.management.monitor.Monitor.alreadyNotified:I
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/management/monitor/Monitor;
synchronized void updateAlreadyNotified(javax.management.monitor.Monitor$ObservedObject, int);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield javax.management.monitor.Monitor.alreadyNotifieds:[I
iload 2
aload 1
invokevirtual javax.management.monitor.Monitor$ObservedObject.getAlreadyNotified:()I
iastore
1: iload 2
ifne 3
2: aload 0
invokevirtual javax.management.monitor.Monitor.updateDeprecatedAlreadyNotified:()V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/management/monitor/Monitor;
0 4 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 4 2 index I
MethodParameters:
Name Flags
o
index
synchronized boolean isAlreadyNotified(javax.management.monitor.Monitor$ObservedObject, int);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;I)Z
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual javax.management.monitor.Monitor$ObservedObject.getAlreadyNotified:()I
iload 2
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavax/management/monitor/Monitor;
0 2 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 2 2 mask I
MethodParameters:
Name Flags
o
mask
synchronized void setAlreadyNotified(javax.management.monitor.Monitor$ObservedObject, int, int, int[]);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iload 2
aload 4
invokevirtual javax.management.monitor.Monitor.computeAlreadyNotifiedIndex:(Ljavax/management/monitor/Monitor$ObservedObject;I[I)I
istore 5
start local 5 1: iload 5
iconst_m1
if_icmpne 3
2: return
3: StackMap locals: int
StackMap stack:
aload 1
aload 1
invokevirtual javax.management.monitor.Monitor$ObservedObject.getAlreadyNotified:()I
iload 3
ior
invokevirtual javax.management.monitor.Monitor$ObservedObject.setAlreadyNotified:(I)V
4: aload 0
aload 1
iload 5
invokevirtual javax.management.monitor.Monitor.updateAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)V
5: 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 6 0 this Ljavax/management/monitor/Monitor;
0 6 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 6 2 index I
0 6 3 mask I
0 6 4 an [I
1 6 5 i I
MethodParameters:
Name Flags
o
index
mask
an
synchronized void resetAlreadyNotified(javax.management.monitor.Monitor$ObservedObject, int, int);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;II)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 1
invokevirtual javax.management.monitor.Monitor$ObservedObject.getAlreadyNotified:()I
iload 3
iconst_m1
ixor
iand
invokevirtual javax.management.monitor.Monitor$ObservedObject.setAlreadyNotified:(I)V
1: aload 0
aload 1
iload 2
invokevirtual javax.management.monitor.Monitor.updateAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/management/monitor/Monitor;
0 3 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 3 2 index I
0 3 3 mask I
MethodParameters:
Name Flags
o
index
mask
synchronized void resetAllAlreadyNotified(javax.management.monitor.Monitor$ObservedObject, int, int[]);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;I[I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
aload 3
invokevirtual javax.management.monitor.Monitor.computeAlreadyNotifiedIndex:(Ljavax/management/monitor/Monitor$ObservedObject;I[I)I
istore 4
start local 4 1: iload 4
iconst_m1
if_icmpne 3
2: return
3: StackMap locals: int
StackMap stack:
aload 1
iconst_0
invokevirtual javax.management.monitor.Monitor$ObservedObject.setAlreadyNotified:(I)V
4: aload 0
aload 1
iload 2
invokevirtual javax.management.monitor.Monitor.updateAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)V
5: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljavax/management/monitor/Monitor;
0 6 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 6 2 index I
0 6 3 an [I
1 6 4 i I
MethodParameters:
Name Flags
o
index
an
synchronized int computeAlreadyNotifiedIndex(javax.management.monitor.Monitor$ObservedObject, int, int[]);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;I[I)I
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
aload 0
getfield javax.management.monitor.Monitor.alreadyNotifieds:[I
if_acmpne 2
1: iload 2
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.observedObjects:Ljava/util/List;
aload 1
invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/management/monitor/Monitor;
0 3 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 3 2 index I
0 3 3 an [I
MethodParameters:
Name Flags
o
index
an
private void sendNotification(java.lang.String, long, java.lang.String, java.lang.Object, java.lang.Object, javax.management.ObjectName, boolean);
descriptor: (Ljava/lang/String;JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljavax/management/ObjectName;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=13, locals=12, args_size=8
start local 0 start local 1 start local 2 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
invokeinterface java.lang.System$Logger.isLoggable:(Ljava/lang/System$Logger$Level;)Z
ifeq 8
3: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
new java.lang.StringBuilder
dup
ldc "send notification: \n\tNotification observed object = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5: ldc "\n\tNotification observed attribute = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "\n\tNotification derived gauge = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
8: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.sequenceNumber:Ljava/util/concurrent/atomic/AtomicLong;
invokevirtual java.util.concurrent.atomic.AtomicLong.getAndIncrement:()J
lstore 9
start local 9 9: new javax.management.monitor.MonitorNotification
dup
aload 1
10: aload 0
11: lload 9
12: lload 2
13: aload 4
14: aload 7
15: aload 0
getfield javax.management.monitor.Monitor.observedAttribute:Ljava/lang/String;
16: aload 5
17: aload 6
18: invokespecial javax.management.monitor.MonitorNotification.<init>:(Ljava/lang/String;Ljava/lang/Object;JJLjava/lang/String;Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
19: astore 11
start local 11 20: iload 8
ifeq 22
21: aload 0
aload 11
invokevirtual javax.management.monitor.Monitor.onErrorNotification:(Ljavax/management/monitor/MonitorNotification;)V
22: StackMap locals: long javax.management.monitor.MonitorNotification
StackMap stack:
aload 0
aload 11
invokevirtual javax.management.monitor.Monitor.sendNotification:(Ljavax/management/Notification;)V
23: return
end local 11 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljavax/management/monitor/Monitor;
0 24 1 type Ljava/lang/String;
0 24 2 timeStamp J
0 24 4 msg Ljava/lang/String;
0 24 5 derGauge Ljava/lang/Object;
0 24 6 trigger Ljava/lang/Object;
0 24 7 object Ljavax/management/ObjectName;
0 24 8 onError Z
9 24 9 seqno J
20 24 11 mn Ljavax/management/monitor/MonitorNotification;
MethodParameters:
Name Flags
type
timeStamp
msg
derGauge
trigger
object
onError
private void monitor(javax.management.monitor.Monitor$ObservedObject, int, int[]);
descriptor: (Ljavax/management/monitor/Monitor$ObservedObject;I[I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=15, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 5
start local 5 1: aconst_null
astore 6
start local 6 2: aconst_null
astore 7
start local 7 3: aconst_null
astore 8
start local 8 4: aconst_null
astore 10
start local 10 5: aconst_null
astore 11
start local 11 6: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 8
7: return
8: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] top java.lang.String java.lang.String java.lang.Object java.lang.Object top java.lang.Comparable javax.management.monitor.MonitorNotification
StackMap stack:
aload 0
dup
astore 12
monitorenter
9: aload 1
invokevirtual javax.management.monitor.Monitor$ObservedObject.getObservedObject:()Ljavax/management/ObjectName;
astore 9
start local 9 10: aload 0
invokevirtual javax.management.monitor.Monitor.getObservedAttribute:()Ljava/lang/String;
astore 4
start local 4 11: aload 9
ifnull 12
aload 4
ifnonnull 14
12: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification javax.management.monitor.Monitor
StackMap stack:
aload 12
monitorexit
13: return
14: StackMap locals:
StackMap stack:
aload 12
monitorexit
15: goto 18
end local 9 end local 4 StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] top java.lang.String java.lang.String java.lang.Object java.lang.Object top java.lang.Comparable javax.management.monitor.MonitorNotification javax.management.monitor.Monitor
StackMap stack: java.lang.Throwable
16: aload 12
monitorexit
17: athrow
start local 4 start local 9 18: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification
StackMap stack:
aconst_null
astore 12
start local 12 19: aload 0
aload 0
getfield javax.management.monitor.Monitor.server:Ljavax/management/MBeanServer;
aload 9
aload 4
invokevirtual javax.management.monitor.Monitor.getAttribute:(Ljavax/management/MBeanServerConnection;Ljavax/management/ObjectName;Ljava/lang/String;)Ljava/lang/Object;
astore 12
20: aload 12
ifnonnull 110
21: aload 0
22: aload 1
iconst_4
23: invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
24: ifeq 26
25: return
26: StackMap locals: java.lang.Object
StackMap stack:
ldc "jmx.monitor.error.type"
astore 5
27: aload 0
28: aload 1
iload 2
iconst_4
aload 3
29: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
30: ldc "The observed attribute value is null."
astore 6
31: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
32: goto 110
StackMap locals:
StackMap stack: java.lang.NullPointerException
33: astore 13
start local 13 34: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 36
35: return
36: StackMap locals: java.lang.NullPointerException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
37: aload 0
aload 1
iload 2
bipush 8
aload 3
invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
38: ldc "The monitor must be registered in the MBean server or an MBeanServerConnection must be explicitly supplied."
39: astore 6
40: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
41: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljava/lang/NullPointerException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 42: goto 110
43: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: javax.management.InstanceNotFoundException
astore 13
start local 13 44: aload 0
aload 1
iconst_1
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 46
45: return
46: StackMap locals: javax.management.InstanceNotFoundException
StackMap stack:
ldc "jmx.monitor.error.mbean"
astore 5
47: aload 0
48: aload 1
iload 2
iconst_1
aload 3
49: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
50: ldc "The observed object must be accessible in the MBeanServerConnection."
51: astore 6
52: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
53: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljavax/management/InstanceNotFoundException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 54: goto 110
55: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: javax.management.AttributeNotFoundException
astore 13
start local 13 56: aload 0
aload 1
iconst_2
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 58
57: return
58: StackMap locals: javax.management.AttributeNotFoundException
StackMap stack:
ldc "jmx.monitor.error.attribute"
astore 5
59: aload 0
60: aload 1
iload 2
iconst_2
aload 3
61: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
62: ldc "The observed attribute must be accessible in the observed object."
63: astore 6
64: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
65: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljavax/management/AttributeNotFoundException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 66: goto 110
67: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: javax.management.MBeanException
astore 13
start local 13 68: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 70
69: return
70: StackMap locals: javax.management.MBeanException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
71: aload 0
aload 1
iload 2
bipush 8
aload 3
invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
72: aload 13
invokevirtual javax.management.MBeanException.getMessage:()Ljava/lang/String;
ifnonnull 73
ldc ""
goto 74
StackMap locals:
StackMap stack:
73: aload 13
invokevirtual javax.management.MBeanException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
74: astore 6
75: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
76: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljavax/management/MBeanException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 77: goto 110
78: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: javax.management.ReflectionException
astore 13
start local 13 79: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 81
80: return
81: StackMap locals: javax.management.ReflectionException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
82: aload 0
aload 1
iload 2
bipush 8
aload 3
invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
83: aload 13
invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
ifnonnull 84
ldc ""
goto 85
StackMap locals:
StackMap stack:
84: aload 13
invokevirtual javax.management.ReflectionException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
85: astore 6
86: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
87: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljavax/management/ReflectionException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 88: goto 110
89: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: java.io.IOException
astore 13
start local 13 90: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 92
91: return
92: StackMap locals: java.io.IOException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
93: aload 0
aload 1
iload 2
bipush 8
aload 3
invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
94: aload 13
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
ifnonnull 95
ldc ""
goto 96
StackMap locals:
StackMap stack:
95: aload 13
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
96: astore 6
97: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
98: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljava/io/IOException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 99: goto 110
100: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object
StackMap stack: java.lang.RuntimeException
astore 13
start local 13 101: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 103
102: return
103: StackMap locals: java.lang.RuntimeException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
104: aload 0
aload 1
iload 2
bipush 8
aload 3
invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
105: aload 13
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
ifnonnull 106
ldc ""
goto 107
StackMap locals:
StackMap stack:
106: aload 13
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
107: astore 6
108: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
109: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 13
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljava/lang/RuntimeException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 13 110: StackMap locals:
StackMap stack:
aload 0
dup
astore 13
monitorenter
111: aload 0
invokevirtual javax.management.monitor.Monitor.isActive:()Z
ifne 114
112: aload 13
monitorexit
113: return
114: StackMap locals: javax.management.monitor.Monitor
StackMap stack:
aload 4
aload 0
invokevirtual javax.management.monitor.Monitor.getObservedAttribute:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 117
115: aload 13
monitorexit
116: return
117: StackMap locals:
StackMap stack:
aload 6
ifnonnull 165
118: aload 0
aload 9
119: aload 4
120: aload 12
121: invokevirtual javax.management.monitor.Monitor.getComparableFromAttribute:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Comparable;
astore 10
122: goto 165
StackMap locals:
StackMap stack: java.lang.ClassCastException
123: astore 14
start local 14 124: aload 0
125: aload 1
iconst_4
126: invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
127: ifeq 130
128: aload 13
monitorexit
129: return
130: StackMap locals: java.lang.ClassCastException
StackMap stack:
ldc "jmx.monitor.error.type"
astore 5
131: aload 0
aload 1
iload 2
132: iconst_4
aload 3
133: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
134: ldc "The observed attribute value does not implement the Comparable interface."
135: astore 6
136: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
137: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 14
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljava/lang/ClassCastException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 14 138: goto 165
139: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object javax.management.monitor.Monitor
StackMap stack: javax.management.AttributeNotFoundException
astore 14
start local 14 140: aload 0
aload 1
iconst_2
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 143
141: aload 13
monitorexit
142: return
143: StackMap locals: javax.management.AttributeNotFoundException
StackMap stack:
ldc "jmx.monitor.error.attribute"
astore 5
144: aload 0
145: aload 1
iload 2
iconst_2
aload 3
146: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
147: ldc "The observed attribute must be accessible in the observed object."
148: astore 6
149: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
150: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 14
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljavax/management/AttributeNotFoundException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 14 151: goto 165
152: StackMap locals: javax.management.monitor.Monitor javax.management.monitor.Monitor$ObservedObject int int[] java.lang.String java.lang.String java.lang.String java.lang.Object java.lang.Object javax.management.ObjectName java.lang.Comparable javax.management.monitor.MonitorNotification java.lang.Object javax.management.monitor.Monitor
StackMap stack: java.lang.RuntimeException
astore 14
start local 14 153: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 156
154: aload 13
monitorexit
155: return
156: StackMap locals: java.lang.RuntimeException
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
157: aload 0
aload 1
iload 2
158: bipush 8
aload 3
159: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
160: aload 14
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
ifnonnull 161
ldc ""
goto 162
StackMap locals:
StackMap stack:
161: aload 14
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
162: astore 6
163: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
164: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 14
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic get(Ljava/lang/RuntimeException;)Ljava/util/function/Supplier;
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;
java/lang/Throwable.toString()Ljava/lang/String; (5)
()Ljava/lang/String;
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/util/function/Supplier;)V
end local 14 165: StackMap locals:
StackMap stack:
aload 6
ifnonnull 179
166: aload 0
aload 9
aload 4
aload 10
invokevirtual javax.management.monitor.Monitor.isComparableTypeValid:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Z
ifne 179
167: aload 0
168: aload 1
iconst_4
169: invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
170: ifeq 173
171: aload 13
monitorexit
172: return
173: StackMap locals:
StackMap stack:
ldc "jmx.monitor.error.type"
astore 5
174: aload 0
aload 1
iload 2
175: iconst_4
aload 3
176: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
177: ldc "The observed attribute type is not valid."
astore 6
178: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
179: StackMap locals:
StackMap stack:
aload 6
ifnonnull 190
180: aload 0
aload 9
aload 4
aload 10
invokevirtual javax.management.monitor.Monitor.isThresholdTypeValid:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Z
ifne 190
181: aload 0
aload 1
bipush 16
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 184
182: aload 13
monitorexit
183: return
184: StackMap locals:
StackMap stack:
ldc "jmx.monitor.error.threshold"
astore 5
185: aload 0
aload 1
iload 2
186: bipush 16
aload 3
187: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
188: ldc "The threshold type is not valid."
astore 6
189: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
190: StackMap locals:
StackMap stack:
aload 6
ifnonnull 201
191: aload 0
aload 9
aload 4
aload 10
invokevirtual javax.management.monitor.Monitor.buildErrorNotification:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljava/lang/String;
astore 6
192: aload 6
ifnull 201
193: aload 0
aload 1
bipush 8
invokevirtual javax.management.monitor.Monitor.isAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I)Z
ifeq 196
194: aload 13
monitorexit
195: return
196: StackMap locals:
StackMap stack:
ldc "jmx.monitor.error.runtime"
astore 5
197: aload 0
aload 1
iload 2
198: bipush 8
aload 3
199: invokevirtual javax.management.monitor.Monitor.setAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;II[I)V
200: getstatic com.sun.jmx.defaults.JmxProperties.MONITOR_LOGGER:Ljava/lang/System$Logger;
getstatic java.lang.System$Logger$Level.TRACE:Ljava/lang/System$Logger$Level;
aload 6
invokeinterface java.lang.System$Logger.log:(Ljava/lang/System$Logger$Level;Ljava/lang/String;)V
201: StackMap locals:
StackMap stack:
aload 6
ifnonnull 213
202: aload 0
aload 1
iload 2
aload 3
invokevirtual javax.management.monitor.Monitor.resetAllAlreadyNotified:(Ljavax/management/monitor/Monitor$ObservedObject;I[I)V
203: aload 0
aload 9
204: aload 4
205: aload 10
206: invokevirtual javax.management.monitor.Monitor.getDerivedGaugeFromComparable:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljava/lang/Comparable;
astore 7
207: aload 1
aload 7
invokevirtual javax.management.monitor.Monitor$ObservedObject.setDerivedGauge:(Ljava/lang/Object;)V
208: aload 1
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual javax.management.monitor.Monitor$ObservedObject.setDerivedGaugeTimeStamp:(J)V
209: aload 0
aload 9
210: aload 4
211: aload 7
checkcast java.lang.Comparable
212: invokevirtual javax.management.monitor.Monitor.buildAlarmNotification:(Ljavax/management/ObjectName;Ljava/lang/String;Ljava/lang/Comparable;)Ljavax/management/monitor/MonitorNotification;
astore 11
213: StackMap locals:
StackMap stack:
aload 13
monitorexit
214: goto 217
StackMap locals:
StackMap stack: java.lang.Throwable
215: aload 13
monitorexit
216: athrow
217: StackMap locals:
StackMap stack:
aload 6
ifnull 226
218: aload 0
aload 5
219: invokestatic java.lang.System.currentTimeMillis:()J
220: aload 6
221: aload 7
222: aload 8
223: aload 9
224: iconst_1
225: invokevirtual javax.management.monitor.Monitor.sendNotification:(Ljava/lang/String;JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljavax/management/ObjectName;Z)V
226: StackMap locals:
StackMap stack:
aload 11
ifnull 235
aload 11
invokevirtual javax.management.monitor.MonitorNotification.getType:()Ljava/lang/String;
ifnull 235
227: aload 0
aload 11
invokevirtual javax.management.monitor.MonitorNotification.getType:()Ljava/lang/String;
228: invokestatic java.lang.System.currentTimeMillis:()J
229: aload 11
invokevirtual javax.management.monitor.MonitorNotification.getMessage:()Ljava/lang/String;
230: aload 7
231: aload 11
invokevirtual javax.management.monitor.MonitorNotification.getTrigger:()Ljava/lang/Object;
232: aload 9
233: iconst_0
234: invokevirtual javax.management.monitor.Monitor.sendNotification:(Ljava/lang/String;JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljavax/management/ObjectName;Z)V
235: StackMap locals:
StackMap stack:
return
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 236 0 this Ljavax/management/monitor/Monitor;
0 236 1 o Ljavax/management/monitor/Monitor$ObservedObject;
0 236 2 index I
0 236 3 an [I
11 16 4 attribute Ljava/lang/String;
18 236 4 attribute Ljava/lang/String;
1 236 5 notifType Ljava/lang/String;
2 236 6 msg Ljava/lang/String;
3 236 7 derGauge Ljava/lang/Object;
4 236 8 trigger Ljava/lang/Object;
10 16 9 object Ljavax/management/ObjectName;
18 236 9 object Ljavax/management/ObjectName;
5 236 10 value Ljava/lang/Comparable<*>;
6 236 11 alarm Ljavax/management/monitor/MonitorNotification;
19 236 12 attributeValue Ljava/lang/Object;
34 42 13 np_ex Ljava/lang/NullPointerException;
44 54 13 inf_ex Ljavax/management/InstanceNotFoundException;
56 66 13 anf_ex Ljavax/management/AttributeNotFoundException;
68 77 13 mb_ex Ljavax/management/MBeanException;
79 88 13 ref_ex Ljavax/management/ReflectionException;
90 99 13 io_ex Ljava/io/IOException;
101 110 13 rt_ex Ljava/lang/RuntimeException;
124 138 14 e Ljava/lang/ClassCastException;
140 151 14 e Ljavax/management/AttributeNotFoundException;
153 165 14 e Ljava/lang/RuntimeException;
Exception table:
from to target type
9 13 16 any
14 15 16 any
16 17 16 any
19 25 33 Class java.lang.NullPointerException
26 32 33 Class java.lang.NullPointerException
19 25 43 Class javax.management.InstanceNotFoundException
26 32 43 Class javax.management.InstanceNotFoundException
19 25 55 Class javax.management.AttributeNotFoundException
26 32 55 Class javax.management.AttributeNotFoundException
19 25 67 Class javax.management.MBeanException
26 32 67 Class javax.management.MBeanException
19 25 78 Class javax.management.ReflectionException
26 32 78 Class javax.management.ReflectionException
19 25 89 Class java.io.IOException
26 32 89 Class java.io.IOException
19 25 100 Class java.lang.RuntimeException
26 32 100 Class java.lang.RuntimeException
118 122 123 Class java.lang.ClassCastException
118 122 139 Class javax.management.AttributeNotFoundException
118 122 152 Class java.lang.RuntimeException
111 113 215 any
114 116 215 any
117 129 215 any
130 142 215 any
143 155 215 any
156 172 215 any
173 183 215 any
184 195 215 any
196 214 215 any
215 216 215 any
MethodParameters:
Name Flags
o
index
an
private synchronized void cleanupFutures();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield javax.management.monitor.Monitor.schedulerFuture:Ljava/util/concurrent/ScheduledFuture;
ifnull 3
1: aload 0
getfield javax.management.monitor.Monitor.schedulerFuture:Ljava/util/concurrent/ScheduledFuture;
iconst_0
invokeinterface java.util.concurrent.ScheduledFuture.cancel:(Z)Z
pop
2: aload 0
aconst_null
putfield javax.management.monitor.Monitor.schedulerFuture:Ljava/util/concurrent/ScheduledFuture;
3: StackMap locals:
StackMap stack:
aload 0
getfield javax.management.monitor.Monitor.monitorFuture:Ljava/util/concurrent/Future;
ifnull 6
4: aload 0
getfield javax.management.monitor.Monitor.monitorFuture:Ljava/util/concurrent/Future;
iconst_0
invokeinterface java.util.concurrent.Future.cancel:(Z)Z
pop
5: aload 0
aconst_null
putfield javax.management.monitor.Monitor.monitorFuture:Ljava/util/concurrent/Future;
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljavax/management/monitor/Monitor;
private synchronized void cleanupIsComplexTypeAttribute();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
putfield javax.management.monitor.Monitor.firstAttribute:Ljava/lang/String;
1: aload 0
getfield javax.management.monitor.Monitor.remainingAttributes:Ljava/util/List;
invokeinterface java.util.List.clear:()V
2: aload 0
iconst_0
putfield javax.management.monitor.Monitor.isComplexTypeAttribute:Z
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljavax/management/monitor/Monitor;
static int[] $SWITCH_TABLE$javax$management$monitor$Monitor$NumericalType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic javax.management.monitor.Monitor.$SWITCH_TABLE$javax$management$monitor$Monitor$NumericalType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javax.management.monitor.Monitor$NumericalType.values:()[Ljavax/management/monitor/Monitor$NumericalType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.BYTE:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iconst_1
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.DOUBLE:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
bipush 6
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.FLOAT:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iconst_5
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.INTEGER:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.LONG:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iconst_4
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic javax.management.monitor.Monitor$NumericalType.SHORT:Ljavax/management/monitor/Monitor$NumericalType;
invokevirtual javax.management.monitor.Monitor$NumericalType.ordinal:()I
iconst_2
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
dup
putstatic javax.management.monitor.Monitor.$SWITCH_TABLE$javax$management$monitor$Monitor$NumericalType:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
}
SourceFile: "Monitor.java"
NestMembers:
javax.management.monitor.Monitor$DaemonThreadFactory javax.management.monitor.Monitor$MonitorTask javax.management.monitor.Monitor$MonitorTask$1 javax.management.monitor.Monitor$NumericalType javax.management.monitor.Monitor$ObservedObject javax.management.monitor.Monitor$SchedulerTask
InnerClasses:
public abstract Logger = java.lang.System$Logger of java.lang.System
public final Level = java.lang.System$Logger$Level of java.lang.System$Logger
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private DaemonThreadFactory = javax.management.monitor.Monitor$DaemonThreadFactory of javax.management.monitor.Monitor
private MonitorTask = javax.management.monitor.Monitor$MonitorTask of javax.management.monitor.Monitor
final NumericalType = javax.management.monitor.Monitor$NumericalType of javax.management.monitor.Monitor
ObservedObject = javax.management.monitor.Monitor$ObservedObject of javax.management.monitor.Monitor
private SchedulerTask = javax.management.monitor.Monitor$SchedulerTask of javax.management.monitor.Monitor