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 / Reference.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-09  |  3.1 KB  |  143 lines

  1. package javax.naming;
  2.  
  3. import java.io.Serializable;
  4. import java.util.Enumeration;
  5. import java.util.Vector;
  6.  
  7. public class Reference implements Cloneable, Serializable {
  8.    protected String className;
  9.    protected Vector addrs;
  10.    protected String classFactory;
  11.    protected String classFactoryLocation;
  12.  
  13.    public Reference(String var1) {
  14.       this.className = var1;
  15.       this.addrs = new Vector();
  16.    }
  17.  
  18.    public Reference(String var1, RefAddr var2) {
  19.       this.className = var1;
  20.       this.addrs = new Vector();
  21.       this.addrs.addElement(var2);
  22.    }
  23.  
  24.    public Reference(String var1, String var2, String var3) {
  25.       this(var1);
  26.       this.classFactory = var2;
  27.       this.classFactoryLocation = var3;
  28.    }
  29.  
  30.    public Reference(String var1, RefAddr var2, String var3, String var4) {
  31.       this(var1, var2);
  32.       this.classFactory = var3;
  33.       this.classFactoryLocation = var4;
  34.    }
  35.  
  36.    public String getClassName() {
  37.       return this.className;
  38.    }
  39.  
  40.    public String getFactoryClassName() {
  41.       return this.classFactory;
  42.    }
  43.  
  44.    public String getFactoryClassLocation() {
  45.       return this.classFactoryLocation;
  46.    }
  47.  
  48.    public RefAddr get(String var1) {
  49.       int var2 = this.addrs.size();
  50.  
  51.       for(int var4 = 0; var4 < var2; ++var4) {
  52.          RefAddr var3 = (RefAddr)this.addrs.elementAt(var4);
  53.          if (var3.getType().compareTo(var1) == 0) {
  54.             return var3;
  55.          }
  56.       }
  57.  
  58.       return null;
  59.    }
  60.  
  61.    public RefAddr get(int var1) {
  62.       return (RefAddr)this.addrs.elementAt(var1);
  63.    }
  64.  
  65.    public Enumeration getAll() {
  66.       return this.addrs.elements();
  67.    }
  68.  
  69.    public int size() {
  70.       return this.addrs.size();
  71.    }
  72.  
  73.    public void add(RefAddr var1) {
  74.       this.addrs.addElement(var1);
  75.    }
  76.  
  77.    public void add(int var1, RefAddr var2) {
  78.       this.addrs.insertElementAt(var2, var1);
  79.    }
  80.  
  81.    public Object remove(int var1) {
  82.       Object var2 = this.addrs.elementAt(var1);
  83.       this.addrs.removeElementAt(var1);
  84.       return var2;
  85.    }
  86.  
  87.    public void clear() {
  88.       this.addrs.setSize(0);
  89.    }
  90.  
  91.    public boolean equals(Object var1) {
  92.       if (var1 != null && var1 instanceof Reference) {
  93.          Reference var2 = (Reference)var1;
  94.          if (var2.className.equals(this.className) && var2.size() == this.size()) {
  95.             Enumeration var3 = this.getAll();
  96.             Enumeration var4 = var2.getAll();
  97.  
  98.             while(var3.hasMoreElements()) {
  99.                if (!var3.nextElement().equals(var4.nextElement())) {
  100.                   return false;
  101.                }
  102.             }
  103.  
  104.             return true;
  105.          }
  106.       }
  107.  
  108.       return false;
  109.    }
  110.  
  111.    public int hashCode() {
  112.       int var1 = this.className.hashCode();
  113.  
  114.       for(Enumeration var2 = this.getAll(); var2.hasMoreElements(); var1 += var2.nextElement().hashCode()) {
  115.       }
  116.  
  117.       return var1;
  118.    }
  119.  
  120.    public String toString() {
  121.       StringBuffer var1 = new StringBuffer("Reference Class Name: " + this.className + "\n");
  122.       int var2 = this.addrs.size();
  123.  
  124.       for(int var3 = 0; var3 < var2; ++var3) {
  125.          var1.append(this.get(var3).toString());
  126.       }
  127.  
  128.       return var1.toString();
  129.    }
  130.  
  131.    public Object clone() {
  132.       Reference var1 = new Reference(this.className, this.classFactory, this.classFactoryLocation);
  133.       Enumeration var2 = this.getAll();
  134.       var1.addrs = new Vector();
  135.  
  136.       while(var2.hasMoreElements()) {
  137.          var1.addrs.addElement(var2.nextElement());
  138.       }
  139.  
  140.       return var1;
  141.    }
  142. }
  143.