home *** CD-ROM | disk | FTP | other *** search
/ CD Actual Thematic 7: Programming / CDAT7.iso / Share / Java / JDesignerPro / Jdp3_0.exe / data1.cab / Program_Files / javax / naming / BinaryRefAddr.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-09  |  1.6 KB  |  70 lines

  1. package javax.naming;
  2.  
  3. public class BinaryRefAddr extends RefAddr {
  4.    private byte[] buf;
  5.  
  6.    public BinaryRefAddr(String var1, byte[] var2) {
  7.       this(var1, var2, 0, var2.length);
  8.    }
  9.  
  10.    public BinaryRefAddr(String var1, byte[] var2, int var3, int var4) {
  11.       super(var1);
  12.       this.buf = new byte[var4];
  13.       System.arraycopy(var2, var3, this.buf, 0, var4);
  14.    }
  15.  
  16.    public Object getContent() {
  17.       return this.buf;
  18.    }
  19.  
  20.    public boolean equals(Object var1) {
  21.       if (var1 != null && var1 instanceof BinaryRefAddr) {
  22.          BinaryRefAddr var2 = (BinaryRefAddr)var1;
  23.          if (super.addrType.compareTo(var2.addrType) == 0) {
  24.             if (this.buf == null && var2.buf == null) {
  25.                return true;
  26.             }
  27.  
  28.             if (this.buf != null && var2.buf != null && this.buf.length == var2.buf.length) {
  29.                for(int var3 = 0; var3 < this.buf.length; ++var3) {
  30.                   if (this.buf[var3] != var2.buf[var3]) {
  31.                      return false;
  32.                   }
  33.                }
  34.  
  35.                return true;
  36.             }
  37.  
  38.             return false;
  39.          }
  40.       }
  41.  
  42.       return false;
  43.    }
  44.  
  45.    public int hashCode() {
  46.       int var1 = super.addrType.hashCode();
  47.  
  48.       for(int var2 = 0; var2 < this.buf.length; ++var2) {
  49.          var1 += this.buf[var2];
  50.       }
  51.  
  52.       return var1;
  53.    }
  54.  
  55.    public String toString() {
  56.       StringBuffer var1 = new StringBuffer("Address Type: " + super.addrType + "\n");
  57.       var1.append("AddressContents: ");
  58.  
  59.       for(int var2 = 0; var2 < this.buf.length && var2 < 32; ++var2) {
  60.          var1.append(Integer.toHexString(this.buf[var2]) + " ");
  61.       }
  62.  
  63.       if (this.buf.length >= 32) {
  64.          var1.append(" ...\n");
  65.       }
  66.  
  67.       return var1.toString();
  68.    }
  69. }
  70.