public class sun.tools.jstatd.RemoteHostImpl implements sun.jvmstat.monitor.remote.RemoteHost, sun.jvmstat.monitor.event.HostListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.tools.jstatd.RemoteHostImpl
  super_class: java.lang.Object
{
  private sun.jvmstat.monitor.MonitoredHost monitoredHost;
    descriptor: Lsun/jvmstat/monitor/MonitoredHost;
    flags: (0x0002) ACC_PRIVATE

  private java.util.Set<java.lang.Integer> activeVms;
    descriptor: Ljava/util/Set;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/Set<Ljava/lang/Integer;>;

  private static sun.jvmstat.monitor.remote.RemoteVm rvm;
    descriptor: Lsun/jvmstat/monitor/remote/RemoteVm;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private final int rmiPort;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
         0: .line 57
            aload 0 /* this */
            iconst_0
            invokespecial sun.tools.jstatd.RemoteHostImpl.<init>:(I)V
         1: .line 58
            return
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jstatd/RemoteHostImpl;
    Exceptions:
      throws sun.jvmstat.monitor.MonitorException

  public void <init>(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
        start local 1 // int rmiPort
         0: .line 60
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 61
            aload 0 /* this */
            iload 1 /* rmiPort */
            putfield sun.tools.jstatd.RemoteHostImpl.rmiPort:I
         2: .line 63
            aload 0 /* this */
            ldc "localhost"
            invokestatic sun.jvmstat.monitor.MonitoredHost.getMonitoredHost:(Ljava/lang/String;)Lsun/jvmstat/monitor/MonitoredHost;
            putfield sun.tools.jstatd.RemoteHostImpl.monitoredHost:Lsun/jvmstat/monitor/MonitoredHost;
         3: .line 64
            goto 5
      StackMap locals: sun.tools.jstatd.RemoteHostImpl int
      StackMap stack: java.net.URISyntaxException
         4: pop
         5: .line 66
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.monitoredHost:Lsun/jvmstat/monitor/MonitoredHost;
            invokevirtual sun.jvmstat.monitor.MonitoredHost.activeVms:()Ljava/util/Set;
            putfield sun.tools.jstatd.RemoteHostImpl.activeVms:Ljava/util/Set;
         6: .line 67
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.monitoredHost:Lsun/jvmstat/monitor/MonitoredHost;
            aload 0 /* this */
            invokevirtual sun.jvmstat.monitor.MonitoredHost.addHostListener:(Lsun/jvmstat/monitor/event/HostListener;)V
         7: .line 68
            return
        end local 1 // int rmiPort
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lsun/tools/jstatd/RemoteHostImpl;
            0    8     1  rmiPort  I
      Exception table:
        from    to  target  type
           2     3       4  Class java.net.URISyntaxException
    Exceptions:
      throws sun.jvmstat.monitor.MonitorException
    MethodParameters:
         Name  Flags
      rmiPort  

  public sun.jvmstat.monitor.remote.RemoteVm attachVm(int, java.lang.String);
    descriptor: (ILjava/lang/String;)Lsun/jvmstat/monitor/remote/RemoteVm;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=3
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
        start local 1 // int lvmid
        start local 2 // java.lang.String mode
         0: .line 73
            aconst_null
            astore 3 /* stub */
        start local 3 // sun.jvmstat.monitor.remote.RemoteVm stub
         1: .line 74
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 4 /* sb */
        start local 4 // java.lang.StringBuilder sb
         2: .line 76
            aload 4 /* sb */
            ldc "local://"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 1 /* lvmid */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "@localhost"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         3: .line 77
            aload 2 /* mode */
            ifnull 5
         4: .line 78
            aload 4 /* sb */
            ldc "?mode="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* mode */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 81
      StackMap locals: sun.jvmstat.monitor.remote.RemoteVm java.lang.StringBuilder
      StackMap stack:
            aload 4 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* vmidStr */
        start local 5 // java.lang.String vmidStr
         6: .line 84
            new sun.jvmstat.monitor.VmIdentifier
            dup
            aload 5 /* vmidStr */
            invokespecial sun.jvmstat.monitor.VmIdentifier.<init>:(Ljava/lang/String;)V
            astore 6 /* vmid */
        start local 6 // sun.jvmstat.monitor.VmIdentifier vmid
         7: .line 85
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.monitoredHost:Lsun/jvmstat/monitor/MonitoredHost;
            aload 6 /* vmid */
            invokevirtual sun.jvmstat.monitor.MonitoredHost.getMonitoredVm:(Lsun/jvmstat/monitor/VmIdentifier;)Lsun/jvmstat/monitor/MonitoredVm;
            astore 7 /* mvm */
        start local 7 // sun.jvmstat.monitor.MonitoredVm mvm
         8: .line 86
            new sun.tools.jstatd.RemoteVmImpl
            dup
            aload 7 /* mvm */
            checkcast sun.jvmstat.monitor.BufferedMonitoredVm
            invokespecial sun.tools.jstatd.RemoteVmImpl.<init>:(Lsun/jvmstat/monitor/BufferedMonitoredVm;)V
            putstatic sun.tools.jstatd.RemoteHostImpl.rvm:Lsun/jvmstat/monitor/remote/RemoteVm;
         9: .line 87
            getstatic sun.tools.jstatd.RemoteHostImpl.rvm:Lsun/jvmstat/monitor/remote/RemoteVm;
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.rmiPort:I
            invokestatic java.rmi.server.UnicastRemoteObject.exportObject:(Ljava/rmi/Remote;I)Ljava/rmi/Remote;
            checkcast sun.jvmstat.monitor.remote.RemoteVm
            astore 3 /* stub */
        end local 7 // sun.jvmstat.monitor.MonitoredVm mvm
        end local 6 // sun.jvmstat.monitor.VmIdentifier vmid
        10: .line 88
            goto 15
        11: .line 89
      StackMap locals: sun.tools.jstatd.RemoteHostImpl int java.lang.String sun.jvmstat.monitor.remote.RemoteVm java.lang.StringBuilder java.lang.String
      StackMap stack: java.net.URISyntaxException
            astore 6 /* e */
        start local 6 // java.net.URISyntaxException e
        12: .line 90
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Malformed VmIdentifier URI: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        13: .line 91
            aload 5 /* vmidStr */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 6 /* e */
        14: .line 90
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.net.URISyntaxException e
        15: .line 93
      StackMap locals:
      StackMap stack:
            aload 3 /* stub */
            areturn
        end local 5 // java.lang.String vmidStr
        end local 4 // java.lang.StringBuilder sb
        end local 3 // sun.jvmstat.monitor.remote.RemoteVm stub
        end local 2 // java.lang.String mode
        end local 1 // int lvmid
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   16     0     this  Lsun/tools/jstatd/RemoteHostImpl;
            0   16     1    lvmid  I
            0   16     2     mode  Ljava/lang/String;
            1   16     3     stub  Lsun/jvmstat/monitor/remote/RemoteVm;
            2   16     4       sb  Ljava/lang/StringBuilder;
            6   16     5  vmidStr  Ljava/lang/String;
            7   10     6     vmid  Lsun/jvmstat/monitor/VmIdentifier;
            8   10     7      mvm  Lsun/jvmstat/monitor/MonitoredVm;
           12   15     6        e  Ljava/net/URISyntaxException;
      Exception table:
        from    to  target  type
           6    10      11  Class java.net.URISyntaxException
    Exceptions:
      throws java.rmi.RemoteException, sun.jvmstat.monitor.MonitorException
    MethodParameters:
       Name  Flags
      lvmid  
      mode   

  public void detachVm(sun.jvmstat.monitor.remote.RemoteVm);
    descriptor: (Lsun/jvmstat/monitor/remote/RemoteVm;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
        start local 1 // sun.jvmstat.monitor.remote.RemoteVm rvm
         0: .line 97
            aload 1 /* rvm */
            invokeinterface sun.jvmstat.monitor.remote.RemoteVm.detach:()V
         1: .line 98
            return
        end local 1 // sun.jvmstat.monitor.remote.RemoteVm rvm
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/jstatd/RemoteHostImpl;
            0    2     1   rvm  Lsun/jvmstat/monitor/remote/RemoteVm;
    Exceptions:
      throws java.rmi.RemoteException
    MethodParameters:
      Name  Flags
      rvm   

  public int[] activeVms();
    descriptor: ()[I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
         0: .line 101
            aconst_null
            astore 1 /* vms */
        start local 1 // java.lang.Object[] vms
         1: .line 102
            aconst_null
            astore 2 /* vmids */
        start local 2 // int[] vmids
         2: .line 104
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.monitoredHost:Lsun/jvmstat/monitor/MonitoredHost;
            invokevirtual sun.jvmstat.monitor.MonitoredHost.activeVms:()Ljava/util/Set;
            invokeinterface java.util.Set.toArray:()[Ljava/lang/Object;
            astore 1 /* vms */
         3: .line 105
            aload 1 /* vms */
            arraylength
            newarray 10
            astore 2 /* vmids */
         4: .line 107
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 8
         6: .line 108
      StackMap locals: java.lang.Object[] int[] int
      StackMap stack:
            aload 2 /* vmids */
            iload 3 /* i */
            aload 1 /* vms */
            iload 3 /* i */
            aaload
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            iastore
         7: .line 107
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         8: iload 3 /* i */
            aload 2 /* vmids */
            arraylength
            if_icmplt 6
        end local 3 // int i
         9: .line 110
            aload 2 /* vmids */
            areturn
        end local 2 // int[] vmids
        end local 1 // java.lang.Object[] vms
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Lsun/tools/jstatd/RemoteHostImpl;
            1   10     1    vms  [Ljava/lang/Object;
            2   10     2  vmids  [I
            5    9     3      i  I
    Exceptions:
      throws sun.jvmstat.monitor.MonitorException

  public void vmStatusChanged(sun.jvmstat.monitor.event.VmStatusChangeEvent);
    descriptor: (Lsun/jvmstat/monitor/event/VmStatusChangeEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
        start local 1 // sun.jvmstat.monitor.event.VmStatusChangeEvent ev
         0: .line 114
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.activeVms:Ljava/util/Set;
            dup
            astore 2
            monitorenter
         1: .line 115
            aload 0 /* this */
            getfield sun.tools.jstatd.RemoteHostImpl.activeVms:Ljava/util/Set;
            aload 1 /* ev */
            invokevirtual sun.jvmstat.monitor.event.VmStatusChangeEvent.getActive:()Ljava/util/Set;
            invokeinterface java.util.Set.retainAll:(Ljava/util/Collection;)Z
            pop
         2: .line 114
            aload 2
            monitorexit
         3: goto 6
      StackMap locals: sun.tools.jstatd.RemoteHostImpl sun.jvmstat.monitor.event.VmStatusChangeEvent java.util.Set
      StackMap stack: java.lang.Throwable
         4: aload 2
            monitorexit
         5: athrow
         6: .line 117
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.jvmstat.monitor.event.VmStatusChangeEvent ev
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lsun/tools/jstatd/RemoteHostImpl;
            0    7     1    ev  Lsun/jvmstat/monitor/event/VmStatusChangeEvent;
      Exception table:
        from    to  target  type
           1     3       4  any
           4     5       4  any
    MethodParameters:
      Name  Flags
      ev    

  public void disconnected(sun.jvmstat.monitor.event.HostEvent);
    descriptor: (Lsun/jvmstat/monitor/event/HostEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // sun.tools.jstatd.RemoteHostImpl this
        start local 1 // sun.jvmstat.monitor.event.HostEvent ev
         0: .line 121
            return
        end local 1 // sun.jvmstat.monitor.event.HostEvent ev
        end local 0 // sun.tools.jstatd.RemoteHostImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/tools/jstatd/RemoteHostImpl;
            0    1     1    ev  Lsun/jvmstat/monitor/event/HostEvent;
    MethodParameters:
      Name  Flags
      ev    
}
SourceFile: "RemoteHostImpl.java"