java.rmi.dgc
Class VMID

java.lang.Object
  extended byjava.rmi.dgc.VMID
All Implemented Interfaces:
Serializable

public final class VMID
extends Object
implements Serializable

A VMID is a identifier that is unique across all Java virtual machines. VMIDs are used by the distributed garbage collector to identify client VMs.

Author:
Ann Wollrath, Peter Jones
See Also:
Serialized Form

Field Summary
private  byte[] addr
           
private static byte[] localAddr
          array of bytes uniquely identifying this host
private static long serialVersionUID
          indicate compatibility with JDK 1.1.x version of class
private  UID uid
           
 
Constructor Summary
VMID()
          Create a new VMID.
 
Method Summary
private static byte[] computeAddressHash()
          Compute the hash an IP address.
 boolean equals(Object obj)
          Compare this VMID to another, and return true if they are the same identifier.
 int hashCode()
          Compute hash code for this VMID.
static boolean isUnique()
          Deprecated.  
 String toString()
          Return string representation of this VMID.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

localAddr

private static byte[] localAddr
array of bytes uniquely identifying this host


addr

private byte[] addr

uid

private UID uid

serialVersionUID

private static final long serialVersionUID
indicate compatibility with JDK 1.1.x version of class

See Also:
Constant Field Values
Constructor Detail

VMID

public VMID()
Create a new VMID. Each new VMID returned from this constructor is unique for all Java virtual machines under the following conditions: a) the conditions for uniqueness for objects of the class java.rmi.server.UID are satisfied, and b) an address can be obtained for this host that is unique and constant for the lifetime of this object.

Method Detail

isUnique

public static boolean isUnique()
Deprecated.  

Return true if an accurate address can be determined for this host. If false, reliable VMID cannot be generated from this host

Returns:
true if host address can be determined, false otherwise

hashCode

public int hashCode()
Compute hash code for this VMID.

Overrides:
hashCode in class Object
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable

equals

public boolean equals(Object obj)
Compare this VMID to another, and return true if they are the same identifier.

Overrides:
equals in class Object
Parameters:
obj - the reference object with which to compare.
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
Object.hashCode(), Hashtable

toString

public String toString()
Return string representation of this VMID.

Overrides:
toString in class Object
Returns:
a string representation of the object.

computeAddressHash

private static byte[] computeAddressHash()
Compute the hash an IP address. The hash is the first 8 bytes of the SHA digest of the IP address.