public final class sun.management.jdp.JdpController
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.management.jdp.JdpController
super_class: java.lang.Object
{
private static sun.management.jdp.JdpController$JDPControllerRunner controller;
descriptor: Lsun/management/jdp/JdpController$JDPControllerRunner;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: aconst_null
putstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/management/jdp/JdpController;
private static int getInteger(java.lang.String, int, java.lang.String);
descriptor: (Ljava/lang/String;ILjava/lang/String;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnonnull 1
iload 1
goto 2
StackMap locals:
StackMap stack:
1: aload 0
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
StackMap locals:
StackMap stack: int
2: ireturn
3: StackMap locals:
StackMap stack: java.lang.NumberFormatException
pop
4: new sun.management.jdp.JdpException
dup
aload 2
invokespecial sun.management.jdp.JdpException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 val Ljava/lang/String;
0 5 1 dflt I
0 5 2 msg Ljava/lang/String;
Exception table:
from to target type
0 2 3 Class java.lang.NumberFormatException
Exceptions:
throws sun.management.jdp.JdpException
MethodParameters:
Name Flags
val
dflt
msg
private static java.net.InetAddress getInetAddress(java.lang.String, java.net.InetAddress, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/net/InetAddress;Ljava/lang/String;)Ljava/net/InetAddress;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnonnull 1
aload 1
goto 2
StackMap locals:
StackMap stack:
1: aload 0
invokestatic java.net.InetAddress.getByName:(Ljava/lang/String;)Ljava/net/InetAddress;
StackMap locals:
StackMap stack: java.net.InetAddress
2: areturn
3: StackMap locals:
StackMap stack: java.net.UnknownHostException
pop
4: new sun.management.jdp.JdpException
dup
aload 2
invokespecial sun.management.jdp.JdpException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 val Ljava/lang/String;
0 5 1 dflt Ljava/net/InetAddress;
0 5 2 msg Ljava/lang/String;
Exception table:
from to target type
0 2 3 Class java.net.UnknownHostException
Exceptions:
throws sun.management.jdp.JdpException
MethodParameters:
Name Flags
val
dflt
msg
private static java.lang.Integer getProcessId();
descriptor: ()Ljava/lang/Integer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=0
0: invokestatic java.lang.management.ManagementFactory.getRuntimeMXBean:()Ljava/lang/management/RuntimeMXBean;
astore 0
start local 0 1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc "jvm"
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
astore 1
start local 1 2: aload 1
iconst_1
invokevirtual java.lang.reflect.Field.setAccessible:(Z)V
3: aload 1
aload 0
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.management.VMManagement
astore 2
start local 2 4: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc "getProcessId"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
start local 3 5: aload 3
iconst_1
invokevirtual java.lang.reflect.Method.setAccessible:(Z)V
6: aload 3
aload 2
iconst_0
anewarray java.lang.Object
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
astore 4
start local 4 7: aload 4
8: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 9: StackMap locals:
StackMap stack: java.lang.Exception
pop
10: aconst_null
areturn
LocalVariableTable:
Start End Slot Name Signature
1 9 0 runtime Ljava/lang/management/RuntimeMXBean;
2 9 1 jvm Ljava/lang/reflect/Field;
4 9 2 mgmt Lsun/management/VMManagement;
5 9 3 pid_method Ljava/lang/reflect/Method;
7 9 4 pid Ljava/lang/Integer;
Exception table:
from to target type
0 8 9 Class java.lang.Exception
public static synchronized void startDiscoveryService(java.net.InetAddress, int, java.lang.String, java.lang.String);
descriptor: (Ljava/net/InetAddress;ILjava/lang/String;Ljava/lang/String;)V
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=14, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc "com.sun.management.jdp.ttl"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
iconst_1
1: ldc "Invalid jdp packet ttl"
2: invokestatic sun.management.jdp.JdpController.getInteger:(Ljava/lang/String;ILjava/lang/String;)I
istore 4
start local 4 3: ldc "com.sun.management.jdp.pause"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
iconst_5
4: ldc "Invalid jdp pause"
5: invokestatic sun.management.jdp.JdpController.getInteger:(Ljava/lang/String;ILjava/lang/String;)I
istore 5
start local 5 6: iload 5
sipush 1000
imul
istore 5
7: ldc "com.sun.management.jdp.source_addr"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
aconst_null
8: ldc "Invalid source address provided"
9: invokestatic sun.management.jdp.JdpController.getInetAddress:(Ljava/lang/String;Ljava/net/InetAddress;Ljava/lang/String;)Ljava/net/InetAddress;
astore 6
start local 6 10: invokestatic java.util.UUID.randomUUID:()Ljava/util/UUID;
astore 7
start local 7 11: new sun.management.jdp.JdpJmxPacket
dup
aload 7
aload 3
invokespecial sun.management.jdp.JdpJmxPacket.<init>:(Ljava/util/UUID;Ljava/lang/String;)V
astore 8
start local 8 12: ldc "sun.java.command"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 13: aload 9
ifnull 16
14: aload 9
ldc " "
iconst_2
invokevirtual java.lang.String.split:(Ljava/lang/String;I)[Ljava/lang/String;
astore 10
start local 10 15: aload 8
aload 10
iconst_0
aaload
invokevirtual sun.management.jdp.JdpJmxPacket.setMainClass:(Ljava/lang/String;)V
end local 10 16: StackMap locals: java.net.InetAddress int java.lang.String java.lang.String int int java.net.InetAddress java.util.UUID sun.management.jdp.JdpJmxPacket java.lang.String
StackMap stack:
aload 8
aload 2
invokevirtual sun.management.jdp.JdpJmxPacket.setInstanceName:(Ljava/lang/String;)V
17: ldc "java.rmi.server.hostname"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 10
start local 10 18: aload 8
aload 10
invokevirtual sun.management.jdp.JdpJmxPacket.setRmiHostname:(Ljava/lang/String;)V
19: aload 8
new java.lang.Integer
dup
iload 5
invokespecial java.lang.Integer.<init>:(I)V
invokevirtual java.lang.Integer.toString:()Ljava/lang/String;
invokevirtual sun.management.jdp.JdpJmxPacket.setBroadcastInterval:(Ljava/lang/String;)V
20: invokestatic sun.management.jdp.JdpController.getProcessId:()Ljava/lang/Integer;
astore 11
start local 11 21: aload 11
ifnull 23
22: aload 8
aload 11
invokevirtual java.lang.Integer.toString:()Ljava/lang/String;
invokevirtual sun.management.jdp.JdpJmxPacket.setProcessId:(Ljava/lang/String;)V
23: StackMap locals: java.lang.String java.lang.Integer
StackMap stack:
new sun.management.jdp.JdpBroadcaster
dup
aload 0
aload 6
iload 1
iload 4
invokespecial sun.management.jdp.JdpBroadcaster.<init>:(Ljava/net/InetAddress;Ljava/net/InetAddress;II)V
astore 12
start local 12 24: invokestatic sun.management.jdp.JdpController.stopDiscoveryService:()V
25: new sun.management.jdp.JdpController$JDPControllerRunner
dup
aload 12
aload 8
iload 5
invokespecial sun.management.jdp.JdpController$JDPControllerRunner.<init>:(Lsun/management/jdp/JdpBroadcaster;Lsun/management/jdp/JdpJmxPacket;I)V
putstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
26: new java.lang.Thread
dup
getstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
ldc "JDP broadcaster"
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;Ljava/lang/String;)V
astore 13
start local 13 27: aload 13
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
28: aload 13
invokevirtual java.lang.Thread.start:()V
29: return
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 address Ljava/net/InetAddress;
0 30 1 port I
0 30 2 instanceName Ljava/lang/String;
0 30 3 url Ljava/lang/String;
3 30 4 ttl I
6 30 5 pause I
10 30 6 sourceAddress Ljava/net/InetAddress;
11 30 7 id Ljava/util/UUID;
12 30 8 packet Lsun/management/jdp/JdpJmxPacket;
13 30 9 javaCommand Ljava/lang/String;
15 16 10 arr [Ljava/lang/String;
18 30 10 rmiHostname Ljava/lang/String;
21 30 11 pid Ljava/lang/Integer;
24 30 12 bcast Lsun/management/jdp/JdpBroadcaster;
27 30 13 t Ljava/lang/Thread;
Exceptions:
throws java.io.IOException, sun.management.jdp.JdpException
MethodParameters:
Name Flags
address
port
instanceName
url
public static synchronized void stopDiscoveryService();
descriptor: ()V
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=0, args_size=0
0: getstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
ifnull 3
1: getstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
invokevirtual sun.management.jdp.JdpController$JDPControllerRunner.stop:()V
2: aconst_null
putstatic sun.management.jdp.JdpController.controller:Lsun/management/jdp/JdpController$JDPControllerRunner;
3: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "JdpController.java"
NestMembers:
sun.management.jdp.JdpController$JDPControllerRunner
InnerClasses:
private JDPControllerRunner = sun.management.jdp.JdpController$JDPControllerRunner of sun.management.jdp.JdpController