public abstract class com.sun.jmx.snmp.daemon.CommunicatorServer implements java.lang.Runnable, javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, com.sun.jmx.snmp.daemon.CommunicatorServerMBean
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.jmx.snmp.daemon.CommunicatorServer
super_class: java.lang.Object
{
public static final int ONLINE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int OFFLINE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int STOPPING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int STARTING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int SNMP_TYPE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
volatile transient int state;
descriptor: I
flags: (0x00c0) ACC_VOLATILE, ACC_TRANSIENT
javax.management.ObjectName objectName;
descriptor: Ljavax/management/ObjectName;
flags: (0x0000)
javax.management.MBeanServer topMBS;
descriptor: Ljavax/management/MBeanServer;
flags: (0x0000)
javax.management.MBeanServer bottomMBS;
descriptor: Ljavax/management/MBeanServer;
flags: (0x0000)
transient java.lang.String dbgTag;
descriptor: Ljava/lang/String;
flags: (0x0080) ACC_TRANSIENT
int maxActiveClientCount;
descriptor: I
flags: (0x0000)
transient int servedClientCount;
descriptor: I
flags: (0x0080) ACC_TRANSIENT
java.lang.String host;
descriptor: Ljava/lang/String;
flags: (0x0000)
int port;
descriptor: I
flags: (0x0000)
private transient java.lang.Object stateLock;
descriptor: Ljava/lang/Object;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.util.Vector<com.sun.jmx.snmp.daemon.ClientHandler> clientHandlerVector;
descriptor: Ljava/util/Vector;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/Vector<Lcom/sun/jmx/snmp/daemon/ClientHandler;>;
private transient java.lang.Thread fatherThread;
descriptor: Ljava/lang/Thread;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.lang.Thread mainThread;
descriptor: Ljava/lang/Thread;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private volatile boolean stopRequested;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean interrupted;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private transient java.lang.Exception startException;
descriptor: Ljava/lang/Exception;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient long notifCount;
descriptor: J
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient javax.management.NotificationBroadcasterSupport notifBroadcaster;
descriptor: Ljavax/management/NotificationBroadcasterSupport;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient javax.management.MBeanNotificationInfo[] notifInfos;
descriptor: [Ljavax/management/MBeanNotificationInfo;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
2: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
3: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
4: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
5: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
6: aload 0
iconst_m1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
7: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
8: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
9: aload 0
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.fatherThread:Ljava/lang/Thread;
10: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
11: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
12: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
13: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
14: aload 0
lconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
15: aload 0
16: new javax.management.NotificationBroadcasterSupport
dup
invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
17: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
18: iload 1
tableswitch { // 4 - 4
4: 19
default: 20
}
19: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int
StackMap stack:
goto 21
20: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Invalid connector Type"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
22: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 23 1 connectorType I
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
connectorType
protected java.lang.Thread createMainThread();
descriptor: ()Ljava/lang/Thread;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=1, args_size=1
start local 0 0: new java.lang.Thread
dup
aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeThreadName:()Ljava/lang/String;
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
public void start(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_2
if_icmpne 3
2: aload 0
iconst_1
ldc 60000
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitState:(IJ)Z
pop
3: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long top java.lang.Object
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_1
if_icmpne 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: istore 3
start local 3 6: iload 3
ifeq 11
7: aload 0
iconst_3
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
8: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
9: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
10: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
11: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long int java.lang.Object
StackMap stack:
aload 4
monitorexit
12: goto 15
end local 3 StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long top java.lang.Object
StackMap stack: java.lang.Throwable
13: aload 4
monitorexit
14: athrow
start local 3 15: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer long int
StackMap stack:
iload 3
ifne 21
16: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 20
17: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
18: ldc "start"
ldc "Connector is not OFFLINE"
19: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
20: StackMap locals:
StackMap stack:
return
21: StackMap locals:
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 25
22: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
23: ldc "start"
ldc "--> Start connector "
24: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.createMainThread:()Ljava/lang/Thread;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
26: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
27: lload 1
lconst_0
lcmp
ifle 28
aload 0
lload 1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitForStart:(J)V
28: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 29 1 timeout J
6 13 3 start Z
15 29 3 start Z
Exception table:
from to target type
1 12 13 any
13 14 13 any
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
MethodParameters:
Name Flags
timeout
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
lconst_0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.start:(J)V
1: goto 7
StackMap locals:
StackMap stack: java.lang.InterruptedException
2: astore 1
start local 1 3: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 7
4: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
5: ldc "start"
ldc "interrupted"
aload 1
6: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 1 7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
3 7 1 x Ljava/lang/InterruptedException;
Exception table:
from to target type
0 1 2 Class java.lang.InterruptedException
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_1
if_icmpeq 2
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_2
if_icmpne 8
2: StackMap locals: java.lang.Object
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 6
3: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
4: ldc "stop"
ldc "Connector is not ONLINE"
5: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
6: StackMap locals:
StackMap stack:
aload 1
monitorexit
7: return
8: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
9: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 13
10: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
11: ldc "stop"
ldc "Interrupt main thread"
12: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
14: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
ifne 17
15: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
16: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
17: StackMap locals:
StackMap stack:
aload 1
monitorexit
18: goto 21
StackMap locals:
StackMap stack: java.lang.Throwable
19: aload 1
monitorexit
20: athrow
21: StackMap locals:
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 25
22: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
23: ldc "stop"
ldc "terminateAllClient"
24: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
25: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.terminateAllClient:()V
26: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 1
monitorenter
27: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_3
if_icmpne 29
28: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
29: StackMap locals: java.lang.Object
StackMap stack:
aload 1
monitorexit
30: goto 33
StackMap locals:
StackMap stack: java.lang.Throwable
31: aload 1
monitorexit
32: athrow
33: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exception table:
from to target type
1 7 19 any
8 18 19 any
19 20 19 any
27 30 31 any
31 32 31 any
public boolean isActive();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifne 2
iconst_1
goto 3
StackMap locals: java.lang.Object
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: aload 1
monitorexit
4: ireturn
5: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
6: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exception table:
from to target type
1 4 5 any
5 6 5 any
public boolean waitState(int, long);
descriptor: (IJ)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=3
start local 0 start local 1 start local 2 0: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
2: ldc "waitState"
new java.lang.StringBuilder
dup
iload 1
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "(0on,1off,2st) TO="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 2
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
3: ldc " ; current state = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getStateString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
lconst_0
lstore 4
start local 4 6: lload 2
lconst_0
lcmp
ifle 8
7: invokestatic java.lang.System.currentTimeMillis:()J
lload 2
ladd
lstore 4
8: StackMap locals: long
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 6
monitorenter
9: goto 39
10: StackMap locals: java.lang.Object
StackMap stack:
lload 2
lconst_0
lcmp
ifge 17
11: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 15
12: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
13: ldc "waitState"
ldc "timeOut < 0, return without wait"
14: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
15: StackMap locals:
StackMap stack:
aload 6
monitorexit
16: iconst_0
ireturn
17: StackMap locals:
StackMap stack:
lload 2
lconst_0
lcmp
ifle 28
18: lload 4
invokestatic java.lang.System.currentTimeMillis:()J
lsub
lstore 7
start local 7 19: lload 7
lconst_0
lcmp
ifgt 26
20: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 24
21: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
22: ldc "waitState"
ldc "timed out"
23: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
24: StackMap locals: long
StackMap stack:
aload 6
monitorexit
25: iconst_0
ireturn
26: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
lload 7
invokevirtual java.lang.Object.wait:(J)V
end local 7 27: goto 39
28: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
invokevirtual java.lang.Object.wait:()V
29: goto 39
StackMap locals:
StackMap stack: java.lang.InterruptedException
30: pop
31: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 35
32: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
33: ldc "waitState"
ldc "wait interrupted"
34: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
35: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iload 1
if_icmpne 36
iconst_1
goto 37
StackMap locals:
StackMap stack:
36: iconst_0
StackMap locals:
StackMap stack: int
37: aload 6
monitorexit
38: ireturn
39: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iload 1
if_icmpne 10
40: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 44
41: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
42: ldc "waitState"
ldc "returning in desired state"
43: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
44: StackMap locals:
StackMap stack:
aload 6
monitorexit
45: iconst_1
ireturn
46: StackMap locals:
StackMap stack: java.lang.Throwable
aload 6
monitorexit
47: athrow
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 48 1 wantedState I
0 48 2 timeOut J
6 48 4 endTime J
19 27 7 toWait J
Exception table:
from to target type
17 24 30 Class java.lang.InterruptedException
26 29 30 Class java.lang.InterruptedException
9 16 46 any
17 25 46 any
26 38 46 any
39 45 46 any
46 47 46 any
MethodParameters:
Name Flags
wantedState
timeOut
private void waitForStart(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=11, args_size=2
start local 0 start local 1 0: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
2: ldc "waitForStart"
new java.lang.StringBuilder
dup
ldc "Timeout="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
3: ldc " ; current state = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getStateString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lstore 3
start local 3 6: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 5
monitorenter
7: goto 24
8: StackMap locals: long java.lang.Object
StackMap stack:
invokestatic java.lang.System.currentTimeMillis:()J
lload 3
lsub
lstore 6
start local 6 9: lload 1
lload 6
lsub
lstore 8
start local 8 10: lload 8
lconst_0
lcmp
ifge 16
11: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 15
12: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
13: ldc "waitForStart"
ldc "timeout < 0, return without wait"
14: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
15: StackMap locals: long long
StackMap stack:
new java.lang.InterruptedException
dup
ldc "Timeout expired"
invokespecial java.lang.InterruptedException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
lload 8
invokevirtual java.lang.Object.wait:(J)V
17: goto 24
StackMap locals:
StackMap stack: java.lang.InterruptedException
18: astore 10
start local 10 19: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 23
20: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
21: ldc "waitForStart"
ldc "wait interrupted"
22: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
23: StackMap locals: java.lang.InterruptedException
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifeq 24
aload 10
athrow
end local 10 end local 8 end local 6 24: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_3
if_icmpeq 8
25: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifne 32
26: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 30
27: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
28: ldc "waitForStart"
ldc "started"
29: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
30: StackMap locals:
StackMap stack:
aload 5
monitorexit
31: return
32: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
instanceof com.sun.jmx.snmp.daemon.CommunicationException
ifeq 34
33: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
checkcast com.sun.jmx.snmp.daemon.CommunicationException
athrow
34: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
instanceof java.lang.InterruptedException
ifeq 36
35: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
checkcast java.lang.InterruptedException
athrow
36: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
ifnull 42
37: new com.sun.jmx.snmp.daemon.CommunicationException
dup
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
38: new java.lang.StringBuilder
dup
ldc "Failed to start: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
39: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
40: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
41: invokespecial com.sun.jmx.snmp.daemon.CommunicationException.<init>:(Ljava/lang/Throwable;Ljava/lang/String;)V
athrow
42: StackMap locals:
StackMap stack:
new com.sun.jmx.snmp.daemon.CommunicationException
dup
new java.lang.StringBuilder
dup
ldc "Failed to start: state is "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
43: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
44: invokespecial com.sun.jmx.snmp.daemon.CommunicationException.<init>:(Ljava/lang/String;)V
athrow
45: StackMap locals:
StackMap stack: java.lang.Throwable
aload 5
monitorexit
46: athrow
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 47 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 47 1 timeout J
6 47 3 startTime J
9 24 6 elapsed J
10 24 8 remainingTime J
19 24 10 e Ljava/lang/InterruptedException;
Exception table:
from to target type
16 17 18 Class java.lang.InterruptedException
7 31 45 any
32 46 45 any
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
MethodParameters:
Name Flags
timeout
public int getState();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
aload 1
monitorexit
2: ireturn
3: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exception table:
from to target type
1 2 3 any
3 4 3 any
public java.lang.String getStateString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
public java.lang.String getHost();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.net.InetAddress.getLocalHost:()Ljava/net/InetAddress;
invokevirtual java.net.InetAddress.getHostName:()Ljava/lang/String;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
1: goto 4
StackMap locals:
StackMap stack: java.lang.Exception
2: pop
3: aload 0
ldc "Unknown host"
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.host:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
public int getPort();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 1
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
aload 1
monitorexit
2: ireturn
3: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Object
StackMap stack: java.lang.Throwable
aload 1
monitorexit
4: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exception table:
from to target type
1 2 3 any
3 4 3 any
public void setPort(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifeq 2
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_3
if_icmpne 3
2: StackMap locals: java.lang.Object
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Stop server before carrying out this operation"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.port:I
4: aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
5: aload 2
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 2
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 10 1 port I
Exception table:
from to target type
1 6 7 any
7 8 7 any
Exceptions:
throws java.lang.IllegalStateException
MethodParameters:
Name Flags
port
public abstract java.lang.String getProtocol();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
int getServedClientCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
int getActiveClientCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
istore 1
start local 1 1: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
1 2 1 result I
int getMaxActiveClientCount();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
void setMaxActiveClientCount(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifeq 2
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_3
if_icmpne 5
2: StackMap locals: java.lang.Object
StackMap stack:
new java.lang.IllegalStateException
dup
3: ldc "Stop server before carrying out this operation"
4: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
iload 1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
6: aload 2
monitorexit
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 2
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 11 1 c I
Exception table:
from to target type
1 7 8 any
8 9 8 any
Exceptions:
throws java.lang.IllegalStateException
MethodParameters:
Name Flags
c
void notifyClientHandlerCreated(com.sun.jmx.snmp.daemon.ClientHandler);
descriptor: (Lcom/sun/jmx/snmp/daemon/ClientHandler;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 2 1 h Lcom/sun/jmx/snmp/daemon/ClientHandler;
MethodParameters:
Name Flags
h
synchronized void notifyClientHandlerDeleted(com.sun.jmx.snmp.daemon.ClientHandler);
descriptor: (Lcom/sun/jmx/snmp/daemon/ClientHandler;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
pop
1: aload 0
invokevirtual java.lang.Object.notifyAll:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 3 1 h Lcom/sun/jmx/snmp/daemon/ClientHandler;
MethodParameters:
Name Flags
h
protected int getBindTries();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 50
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
protected long getBindSleepTime();
descriptor: ()J
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc 100
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getBindTries:()I
istore 3
start local 3 3: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getBindSleepTime:()J
lstore 4
start local 4 4: goto 14
5: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int int long
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doBind:()V
6: iconst_1
istore 2
7: goto 14
StackMap locals:
StackMap stack: com.sun.jmx.snmp.daemon.CommunicationException
8: pop
9: iinc 1 1
10: lload 4
invokestatic java.lang.Thread.sleep:(J)V
11: goto 14
StackMap locals:
StackMap stack: java.lang.InterruptedException
12: astore 6
start local 6 13: aload 6
athrow
end local 6 14: StackMap locals:
StackMap stack:
iload 1
iload 3
if_icmpge 15
iload 2
ifeq 5
15: StackMap locals:
StackMap stack:
iload 2
ifne 36
16: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doBind:()V
end local 4 end local 3 17: goto 36
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack: java.lang.Exception
18: astore 3
start local 3 19: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 23
20: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
21: ldc "run"
ldc "Got unexpected exception"
aload 3
22: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
23: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 4
monitorenter
24: aload 0
aload 3
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.startException:Ljava/lang/Exception;
25: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
26: aload 4
monitorexit
27: goto 30
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int java.lang.Exception java.lang.Object
StackMap stack: java.lang.Throwable
28: aload 4
monitorexit
29: athrow
30: StackMap locals:
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 34
31: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
32: ldc "run"
ldc "State is OFFLINE"
33: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
34: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doError:(Ljava/lang/Exception;)V
35: return
end local 3 36: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
37: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 46
38: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
39: ldc "run"
ldc "State is ONLINE"
40: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
41: goto 46
42: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
iconst_1
iadd
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
43: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doReceive:()V
44: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitIfTooManyClients:()V
45: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doProcess:()V
46: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
ifeq 42
47: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 131
48: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
49: ldc "run"
ldc "Stop has been requested"
50: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
51: goto 131
StackMap locals:
StackMap stack: java.lang.InterruptedException
52: pop
53: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 57
54: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
55: ldc "run"
ldc "Interrupt caught"
56: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
57: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
58: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 5
monitorenter
59: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
60: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
pop
invokestatic java.lang.Thread.interrupted:()Z
pop
61: aload 5
monitorexit
62: goto 65
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
StackMap stack: java.lang.Throwable
63: aload 5
monitorexit
64: athrow
65: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
66: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
67: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
68: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 152
69: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
70: ldc "run"
ldc "State is OFFLINE"
71: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
72: goto 152
StackMap locals:
StackMap stack: java.lang.Exception
73: astore 5
start local 5 74: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 78
75: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
76: ldc "run"
ldc "Got unexpected exception"
aload 5
77: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
78: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
end local 5 79: goto 152
80: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack: java.lang.Exception
astore 3
start local 3 81: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 85
82: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
83: ldc "run"
ldc "Got unexpected exception"
aload 3
84: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
85: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
iconst_2
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
end local 3 86: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 5
monitorenter
87: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
88: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
pop
invokestatic java.lang.Thread.interrupted:()Z
pop
89: aload 5
monitorexit
90: goto 93
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
StackMap stack: java.lang.Throwable
91: aload 5
monitorexit
92: athrow
93: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
94: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
95: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
96: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 152
97: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
98: ldc "run"
ldc "State is OFFLINE"
99: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
100: goto 152
StackMap locals:
StackMap stack: java.lang.Exception
101: astore 5
start local 5 102: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 106
103: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
104: ldc "run"
ldc "Got unexpected exception"
aload 5
105: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
106: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
end local 5 107: goto 152
108: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack: java.lang.Throwable
astore 4
109: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 5
monitorenter
110: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
111: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
pop
invokestatic java.lang.Thread.interrupted:()Z
pop
112: aload 5
monitorexit
113: goto 116
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top java.lang.Throwable java.lang.Object
StackMap stack: java.lang.Throwable
114: aload 5
monitorexit
115: athrow
116: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
117: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
118: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
119: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 130
120: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
121: ldc "run"
ldc "State is OFFLINE"
122: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
123: goto 130
StackMap locals:
StackMap stack: java.lang.Exception
124: astore 5
start local 5 125: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 129
126: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
127: ldc "run"
ldc "Got unexpected exception"
aload 5
128: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
129: StackMap locals: java.lang.Exception
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
end local 5 130: StackMap locals:
StackMap stack:
aload 4
athrow
131: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 5
monitorenter
132: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.interrupted:Z
133: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
pop
invokestatic java.lang.Thread.interrupted:()Z
pop
134: aload 5
monitorexit
135: goto 138
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Object
StackMap stack: java.lang.Throwable
136: aload 5
monitorexit
137: athrow
138: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.doUnbind:()V
139: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.waitClientTermination:()V
140: aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
141: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 152
142: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
143: ldc "run"
ldc "State is OFFLINE"
144: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
145: goto 152
StackMap locals:
StackMap stack: java.lang.Exception
146: astore 5
start local 5 147: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 151
148: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
149: ldc "run"
ldc "Got unexpected exception"
aload 5
150: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
151: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int top top java.lang.Exception
StackMap stack:
aload 0
iconst_1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.changeState:(I)V
end local 5 152: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 153 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
1 153 1 i I
2 153 2 success Z
3 17 3 bindRetries I
4 17 4 sleepTime J
13 14 6 ie Ljava/lang/InterruptedException;
19 36 3 x Ljava/lang/Exception;
81 86 3 x Ljava/lang/Exception;
74 79 5 x Ljava/lang/Exception;
102 107 5 x Ljava/lang/Exception;
125 130 5 x Ljava/lang/Exception;
147 152 5 x Ljava/lang/Exception;
Exception table:
from to target type
5 7 8 Class com.sun.jmx.snmp.daemon.CommunicationException
10 11 12 Class java.lang.InterruptedException
2 17 18 Class java.lang.Exception
24 27 28 any
28 29 28 any
36 51 52 Class java.lang.InterruptedException
59 62 63 any
63 64 63 any
65 72 73 Class java.lang.Exception
36 51 80 Class java.lang.Exception
87 90 91 any
91 92 91 any
93 100 101 Class java.lang.Exception
36 58 108 any
80 86 108 any
110 113 114 any
114 115 114 any
116 123 124 Class java.lang.Exception
132 135 136 any
136 137 136 any
138 145 146 Class java.lang.Exception
protected abstract void doError(java.lang.Exception);
descriptor: (Ljava/lang/Exception;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException
MethodParameters:
Name Flags
e
protected abstract void doBind();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
protected abstract void doReceive();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
protected abstract void doProcess();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
protected abstract void doUnbind();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
Exceptions:
throws com.sun.jmx.snmp.daemon.CommunicationException, java.lang.InterruptedException
public synchronized javax.management.MBeanServer getMBeanServer();
descriptor: ()Ljavax/management/MBeanServer;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
public synchronized void setMBeanServer(javax.management.MBeanServer);
descriptor: (Ljavax/management/MBeanServer;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
ifeq 2
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iconst_3
if_icmpne 3
2: StackMap locals: java.lang.Object
StackMap stack:
new java.lang.IllegalStateException
dup
ldc "Stop server before carrying out this operation"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
aload 2
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 2
start local 2 8: aload 1
astore 3
start local 3 9: goto 16
10: StackMap locals: java.util.Vector javax.management.MBeanServer
StackMap stack:
aload 3
instanceof javax.management.remote.MBeanServerForwarder
ifne 12
11: new java.lang.IllegalArgumentException
dup
ldc "MBeanServer argument must be MBean server where this server is registered, or an MBeanServerForwarder leading to that server"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
ifeq 14
13: new java.lang.IllegalArgumentException
dup
ldc "MBeanServerForwarder loop"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
15: aload 3
checkcast javax.management.remote.MBeanServerForwarder
invokeinterface javax.management.remote.MBeanServerForwarder.getMBeanServer:()Ljavax/management/MBeanServer;
astore 3
16: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
if_acmpne 10
end local 3 17: aload 0
aload 1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
18: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 19 1 newMBS Ljavax/management/MBeanServer;
8 19 2 seenMBS Ljava/util/Vector<Ljavax/management/MBeanServer;>;
9 17 3 mbs Ljavax/management/MBeanServer;
Exception table:
from to target type
1 4 5 any
5 6 5 any
Exceptions:
throws java.lang.IllegalArgumentException, java.lang.IllegalStateException
MethodParameters:
Name Flags
newMBS
javax.management.ObjectName getObjectName();
descriptor: ()Ljavax/management/ObjectName;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
void changeState(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
dup
astore 3
monitorenter
1: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
iload 1
if_icmpne 4
2: aload 3
monitorexit
3: return
4: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int top java.lang.Object
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
istore 2
start local 2 5: aload 0
iload 1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
6: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
invokevirtual java.lang.Object.notifyAll:()V
7: aload 3
monitorexit
8: goto 11
end local 2 StackMap locals:
StackMap stack: java.lang.Throwable
9: aload 3
monitorexit
10: athrow
start local 2 11: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int
StackMap stack:
aload 0
iload 2
iload 1
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.sendStateChangeNotification:(II)V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 13 1 newState I
5 9 2 oldState I
11 13 2 oldState I
Exception table:
from to target type
1 3 9 any
4 8 9 any
9 10 9 any
MethodParameters:
Name Flags
newState
java.lang.String makeDebugTag();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "CommunicatorServer["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getProtocol:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getPort:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
java.lang.String makeThreadName();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
ifnonnull 3
1: ldc "CommunicatorServer"
astore 1
start local 1 2: goto 4
end local 1 3: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
invokevirtual javax.management.ObjectName.toString:()Ljava/lang/String;
astore 1
start local 1 4: StackMap locals: java.lang.String
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
2 3 1 result Ljava/lang/String;
4 5 1 result Ljava/lang/String;
private synchronized void waitIfTooManyClients();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=5, locals=1, args_size=1
start local 0 0: goto 6
1: StackMap locals:
StackMap stack:
getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
2: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
3: ldc "waitIfTooManyClients"
ldc "Waiting for a client to terminate"
4: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.wait:()V
6: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getActiveClientCount:()I
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.maxActiveClientCount:I
if_icmpge 1
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
Exceptions:
throws java.lang.InterruptedException
private void waitClientTermination();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=3, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
istore 1
start local 1 1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 15
2: iload 1
iconst_1
if_icmplt 15
3: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
4: ldc "waitClientTermination"
new java.lang.StringBuilder
dup
ldc "waiting for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
5: iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " clients to terminate"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
7: goto 15
8: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
invokevirtual java.util.Vector.firstElement:()Ljava/lang/Object;
checkcast com.sun.jmx.snmp.daemon.ClientHandler
invokevirtual com.sun.jmx.snmp.daemon.ClientHandler.join:()V
9: goto 15
StackMap locals:
StackMap stack: java.util.NoSuchElementException
10: astore 2
start local 2 11: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 15
12: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
13: ldc "waitClientTermination"
ldc "No elements left"
aload 2
14: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
invokevirtual java.util.Vector.isEmpty:()Z
ifeq 8
16: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 21
17: iload 1
iconst_1
if_icmplt 21
18: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
19: ldc "waitClientTermination"
ldc "Ok, let's go..."
20: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
1 22 1 s I
11 15 2 x Ljava/util/NoSuchElementException;
Exception table:
from to target type
8 9 10 Class java.util.NoSuchElementException
private void terminateAllClient();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=8, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
invokevirtual java.util.Vector.size:()I
istore 1
start local 1 1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 6
2: iload 1
iconst_1
if_icmplt 6
3: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
4: ldc "terminateAllClient"
new java.lang.StringBuilder
dup
ldc "Interrupting "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " clients"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
6: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
iconst_0
anewarray com.sun.jmx.snmp.daemon.ClientHandler
invokevirtual java.util.Vector.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast com.sun.jmx.snmp.daemon.ClientHandler[]
7: astore 2
start local 2 8: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 20
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] top int int com.sun.jmx.snmp.daemon.ClientHandler[]
StackMap stack:
9: aload 6
iload 4
aaload
astore 3
start local 3 10: aload 3
invokevirtual com.sun.jmx.snmp.daemon.ClientHandler.interrupt:()V
11: goto 19
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] com.sun.jmx.snmp.daemon.ClientHandler int int com.sun.jmx.snmp.daemon.ClientHandler[]
StackMap stack: java.lang.Exception
12: astore 7
start local 7 13: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 19
14: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINER:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
15: ldc "terminateAllClient"
16: ldc "Failed to interrupt pending request. Ignore the exception."
17: aload 7
18: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
end local 7 end local 3 19: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int com.sun.jmx.snmp.daemon.ClientHandler[] top int int com.sun.jmx.snmp.daemon.ClientHandler[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
20: iload 4
iload 5
if_icmplt 9
21: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
1 22 1 s I
8 22 2 handlers [Lcom/sun/jmx/snmp/daemon/ClientHandler;
10 19 3 h Lcom/sun/jmx/snmp/daemon/ClientHandler;
13 19 7 x Ljava/lang/Exception;
Exception table:
from to target type
10 11 12 Class java.lang.Exception
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stateLock:Ljava/lang/Object;
2: aload 0
iconst_1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.state:I
3: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.stopRequested:Z
4: aload 0
iconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.servedClientCount:I
5: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.clientHandlerVector:Ljava/util/Vector;
6: aload 0
invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.fatherThread:Ljava/lang/Thread;
7: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.mainThread:Ljava/lang/Thread;
8: aload 0
lconst_0
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
9: aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
10: aload 0
new javax.management.NotificationBroadcasterSupport
dup
invokespecial javax.management.NotificationBroadcasterSupport.<init>:()V
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
11: aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
12: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 13 1 stream Ljava/io/ObjectInputStream;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
stream
public void addNotificationListener(javax.management.NotificationListener, javax.management.NotificationFilter, java.lang.Object);
descriptor: (Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 5
1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
2: ldc "addNotificationListener"
new java.lang.StringBuilder
dup
ldc "Adding listener "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc " with filter "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and handback "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
aload 1
aload 2
aload 3
invokevirtual javax.management.NotificationBroadcasterSupport.addNotificationListener:(Ljavax/management/NotificationListener;Ljavax/management/NotificationFilter;Ljava/lang/Object;)V
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 7 1 listener Ljavax/management/NotificationListener;
0 7 2 filter Ljavax/management/NotificationFilter;
0 7 3 handback Ljava/lang/Object;
Exceptions:
throws java.lang.IllegalArgumentException
MethodParameters:
Name Flags
listener
filter
handback
public void removeNotificationListener(javax.management.NotificationListener);
descriptor: (Ljavax/management/NotificationListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=2
start local 0 start local 1 0: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 4
1: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
2: ldc "removeNotificationListener"
new java.lang.StringBuilder
dup
ldc "Removing listener "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
aload 1
invokevirtual javax.management.NotificationBroadcasterSupport.removeNotificationListener:(Ljavax/management/NotificationListener;)V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 6 1 listener Ljavax/management/NotificationListener;
Exceptions:
throws javax.management.ListenerNotFoundException
MethodParameters:
Name Flags
listener
public javax.management.MBeanNotificationInfo[] getNotificationInfo();
descriptor: ()[Ljavax/management/MBeanNotificationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
ifnonnull 9
1: aload 0
iconst_1
anewarray javax.management.MBeanNotificationInfo
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
2: iconst_1
anewarray java.lang.String
dup
iconst_0
3: ldc "jmx.attribute.change"
aastore
4: astore 1
start local 1 5: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
iconst_0
new javax.management.MBeanNotificationInfo
dup
aload 1
6: ldc Ljavax/management/AttributeChangeNotification;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
7: ldc "Sent to notify that the value of the State attribute of this CommunicatorServer instance has changed."
invokespecial javax.management.MBeanNotificationInfo.<init>:([Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
8: aastore
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifInfos:[Ljavax/management/MBeanNotificationInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
5 9 1 notifTypes [Ljava/lang/String;
private void sendStateChangeNotification(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=14, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iload 1
invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
astore 3
start local 3 1: iload 2
invokestatic com.sun.jmx.snmp.daemon.CommunicatorServer.getStringForState:(I)Ljava/lang/String;
astore 4
start local 4 2: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
3: ldc " The value of attribute State has changed from "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
4: iload 1
invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
ldc " ("
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
aload 3
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
5: ldc ") to "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
iload 2
invokevirtual java.lang.StringBuffer.append:(I)Ljava/lang/StringBuffer;
ldc " ("
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
6: aload 4
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
ldc ")."
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
7: astore 5
start local 5 8: aload 0
dup
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
lconst_1
ladd
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
9: new javax.management.AttributeChangeNotification
dup
aload 0
10: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
11: invokestatic java.lang.System.currentTimeMillis:()J
12: aload 5
13: ldc "State"
14: ldc "int"
15: new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
16: new java.lang.Integer
dup
iload 2
invokespecial java.lang.Integer.<init>:(I)V
17: invokespecial javax.management.AttributeChangeNotification.<init>:(Ljava/lang/Object;JJLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
18: astore 6
start local 6 19: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
invokevirtual java.util.logging.Logger.isLoggable:(Ljava/util/logging/Level;)Z
ifeq 24
20: getstatic com.sun.jmx.defaults.JmxProperties.SNMP_ADAPTOR_LOGGER:Ljava/util/logging/Logger;
getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
21: ldc "sendStateChangeNotification"
new java.lang.StringBuilder
dup
ldc "Sending AttributeChangeNotification #"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
22: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifCount:J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc " with message: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
23: invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
24: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer int int java.lang.String java.lang.String java.lang.String javax.management.AttributeChangeNotification
StackMap stack:
aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.notifBroadcaster:Ljavax/management/NotificationBroadcasterSupport;
aload 6
invokevirtual javax.management.NotificationBroadcasterSupport.sendNotification:(Ljavax/management/Notification;)V
25: return
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 26 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 26 1 oldState I
0 26 2 newState I
1 26 3 oldStateString Ljava/lang/String;
2 26 4 newStateString Ljava/lang/String;
8 26 5 message Ljava/lang/String;
19 26 6 notif Ljavax/management/AttributeChangeNotification;
MethodParameters:
Name Flags
oldState
newState
private static java.lang.String getStringForState(int);
descriptor: (I)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
tableswitch { // 0 - 3
0: 1
1: 3
2: 4
3: 2
default: 5
}
1: StackMap locals:
StackMap stack:
ldc "ONLINE"
areturn
2: StackMap locals:
StackMap stack:
ldc "STARTING"
areturn
3: StackMap locals:
StackMap stack:
ldc "OFFLINE"
areturn
4: StackMap locals:
StackMap stack:
ldc "STOPPING"
areturn
5: StackMap locals:
StackMap stack:
ldc "UNDEFINED"
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 s I
MethodParameters:
Name Flags
s
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=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
1: aload 0
dup
astore 3
monitorenter
2: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
ifnull 4
3: new java.lang.IllegalArgumentException
dup
ldc "connector already registered in an MBean server"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer
StackMap stack:
aload 0
aload 0
aload 1
dup_x1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
5: aload 3
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 3
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.makeDebugTag:()Ljava/lang/String;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.dbgTag:Ljava/lang/String;
10: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 11 1 server Ljavax/management/MBeanServer;
0 11 2 name Ljavax/management/ObjectName;
Exception table:
from to target type
2 6 7 any
7 8 7 any
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=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 7
1: aload 0
dup
astore 2
monitorenter
2: aload 0
aload 0
aconst_null
dup_x1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
3: aload 2
monitorexit
4: goto 7
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer java.lang.Boolean com.sun.jmx.snmp.daemon.CommunicatorServer
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 8 1 registrationDone Ljava/lang/Boolean;
Exception table:
from to target type
2 4 5 any
5 6 5 any
MethodParameters:
Name Flags
registrationDone
public void preDeregister();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
dup
astore 1
monitorenter
1: aload 0
aload 0
aconst_null
dup_x1
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.topMBS:Ljavax/management/MBeanServer;
2: aload 1
monitorexit
3: goto 6
StackMap locals: com.sun.jmx.snmp.daemon.CommunicatorServer com.sun.jmx.snmp.daemon.CommunicatorServer
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield com.sun.jmx.snmp.daemon.CommunicatorServer.objectName:Ljavax/management/ObjectName;
7: aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.getState:()I
istore 1
start local 1 8: iload 1
ifeq 9
iload 1
iconst_3
if_icmpne 10
9: StackMap locals: int
StackMap stack:
aload 0
invokevirtual com.sun.jmx.snmp.daemon.CommunicatorServer.stop:()V
10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
8 11 1 cstate I
Exception table:
from to target type
1 3 4 any
4 5 4 any
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 Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
java.lang.Class loadClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
3: aload 0
getfield com.sun.jmx.snmp.daemon.CommunicatorServer.bottomMBS:Ljavax/management/MBeanServer;
invokestatic javax.management.MBeanServerFactory.getClassLoaderRepository:(Ljavax/management/MBeanServer;)Ljavax/management/loading/ClassLoaderRepository;
4: astore 2
start local 2 5: aload 2
ifnonnull 6
new java.lang.ClassNotFoundException
dup
aload 1
invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: javax.management.loading.ClassLoaderRepository
StackMap stack:
aload 2
aload 1
invokeinterface javax.management.loading.ClassLoaderRepository.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/jmx/snmp/daemon/CommunicatorServer;
0 7 1 className Ljava/lang/String;
5 7 2 clr Ljavax/management/loading/ClassLoaderRepository;
Exception table:
from to target type
0 1 2 Class java.lang.ClassNotFoundException
Exceptions:
throws java.lang.ClassNotFoundException
MethodParameters:
Name Flags
className
}
SourceFile: "CommunicatorServer.java"