home *** CD-ROM | disk | FTP | other *** search
- package java.rmi.dgc;
-
- import java.io.Serializable;
- import java.net.InetAddress;
- import java.rmi.server.UID;
-
- public final class VMID implements Serializable {
- private static byte[] localAddr;
- private static boolean localAddrUnique;
- private byte[] addr;
- private UID uid;
- private static final long serialVersionUID = -538642295484486218L;
-
- public VMID() {
- this.addr = localAddr;
- this.uid = new UID();
- }
-
- public static boolean isUnique() {
- return localAddrUnique;
- }
-
- public int hashCode() {
- return this.uid.hashCode();
- }
-
- public boolean equals(Object var1) {
- if (var1 != null && var1 instanceof VMID) {
- VMID var2 = (VMID)var1;
- if (!this.uid.equals(var2.uid)) {
- return false;
- } else if (this.addr == null ^ var2.addr == null) {
- return false;
- } else {
- if (this.addr != null) {
- if (this.addr.length != var2.addr.length) {
- return false;
- }
-
- for(int var3 = 0; var3 < this.addr.length; ++var3) {
- if (this.addr[var3] != var2.addr[var3]) {
- return false;
- }
- }
- }
-
- return true;
- }
- } else {
- return false;
- }
- }
-
- public String toString() {
- StringBuffer var1 = new StringBuffer();
- if (this.addr != null) {
- for(int var2 = 0; var2 < this.addr.length; ++var2) {
- if (var2 > 0) {
- var1.append('.');
- }
-
- var1.append(Integer.toString(this.addr[var2] & 255, 10));
- }
- }
-
- var1.append(':');
- var1.append(this.uid.toString());
- return var1.toString();
- }
-
- static {
- try {
- InetAddress var0 = InetAddress.getLocalHost();
- byte[] var1 = var0.getAddress();
- localAddr = var1;
- if (var1 != null && (var1[0] | var1[1] | var1[2] | var1[3]) != 0 && (var1[0] != 127 || var1[1] != 0 || var1[2] != 0 || var1[3] != 1)) {
- localAddrUnique = true;
- } else {
- localAddrUnique = false;
- }
- } catch (Exception var2) {
- localAddr = null;
- localAddrUnique = false;
- }
- }
- }
-