home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / ldapjdk.jar / netscape / ldap / client / JDAPControl.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-13  |  1.6 KB  |  70 lines

  1. package netscape.ldap.client;
  2.  
  3. import netscape.ldap.ber.stream.BERBoolean;
  4. import netscape.ldap.ber.stream.BERConstruct;
  5. import netscape.ldap.ber.stream.BERElement;
  6. import netscape.ldap.ber.stream.BEROctetString;
  7. import netscape.ldap.ber.stream.BERSequence;
  8.  
  9. public class JDAPControl {
  10.    String m_type;
  11.    boolean m_criticality = false;
  12.    byte[] m_vals;
  13.  
  14.    public JDAPControl(String var1, boolean var2, byte[] var3) {
  15.       this.m_type = var1;
  16.       this.m_criticality = var2;
  17.       this.m_vals = var3;
  18.    }
  19.  
  20.    public JDAPControl(BERElement var1) {
  21.       BERSequence var2 = (BERSequence)var1;
  22.  
  23.       try {
  24.          this.m_type = new String(((BEROctetString)((BERConstruct)var2).elementAt(0)).getValue(), "UTF8");
  25.       } catch (Throwable var4) {
  26.       }
  27.  
  28.       BERElement var3 = ((BERConstruct)var2).elementAt(1);
  29.       if (var3 instanceof BERBoolean) {
  30.          this.m_criticality = ((BERBoolean)var3).getValue();
  31.       } else {
  32.          this.m_vals = ((BEROctetString)var3).getValue();
  33.       }
  34.  
  35.       if (((BERConstruct)var2).size() >= 3) {
  36.          this.m_vals = ((BEROctetString)((BERConstruct)var2).elementAt(2)).getValue();
  37.       }
  38.  
  39.    }
  40.  
  41.    public BERElement getBERElement() {
  42.       BERSequence var1 = new BERSequence();
  43.       ((BERConstruct)var1).addElement(new BEROctetString(this.m_type));
  44.       ((BERConstruct)var1).addElement(new BERBoolean(this.m_criticality));
  45.       if (this.m_vals != null && this.m_vals.length >= 1) {
  46.          ((BERConstruct)var1).addElement(new BEROctetString(this.m_vals, 0, this.m_vals.length));
  47.       } else {
  48.          ((BERConstruct)var1).addElement(new BEROctetString((byte[])null));
  49.       }
  50.  
  51.       return var1;
  52.    }
  53.  
  54.    public String getID() {
  55.       return this.m_type;
  56.    }
  57.  
  58.    public boolean isCritical() {
  59.       return this.m_criticality;
  60.    }
  61.  
  62.    public byte[] getValue() {
  63.       return this.m_vals;
  64.    }
  65.  
  66.    public String toString() {
  67.       return "Control { type=" + this.m_type + ", criticality=" + this.m_criticality;
  68.    }
  69. }
  70.