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 / opers / JDAPSearchRequest.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-04-13  |  2.7 KB  |  94 lines

  1. package netscape.ldap.client.opers;
  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.BEREnumerated;
  7. import netscape.ldap.ber.stream.BERInteger;
  8. import netscape.ldap.ber.stream.BEROctetString;
  9. import netscape.ldap.ber.stream.BERSequence;
  10. import netscape.ldap.ber.stream.BERTag;
  11. import netscape.ldap.client.JDAPFilter;
  12.  
  13. public class JDAPSearchRequest extends JDAPBaseDNRequest implements JDAPProtocolOp {
  14.    public static final int BASE_OBJECT = 0;
  15.    public static final int SINGLE_LEVEL = 1;
  16.    public static final int WHOLE_SUBTREE = 2;
  17.    public static final int NEVER_DEREF_ALIASES = 0;
  18.    public static final int DEREF_IN_SEARCHING = 1;
  19.    public static final int DEREF_FINDING_BASE_OBJ = 2;
  20.    public static final int DEREF_ALWAYS = 3;
  21.    protected String m_base_dn;
  22.    protected int m_scope;
  23.    protected int m_deref;
  24.    protected int m_size_limit;
  25.    protected int m_time_limit;
  26.    protected boolean m_attrs_only;
  27.    protected String m_filter;
  28.    protected String[] m_attrs;
  29.  
  30.    public JDAPSearchRequest(String var1, int var2, int var3, int var4, int var5, boolean var6, String var7, String[] var8) {
  31.       this.m_base_dn = var1;
  32.       this.m_scope = var2;
  33.       this.m_deref = var3;
  34.       this.m_size_limit = var4;
  35.       this.m_time_limit = var5;
  36.       this.m_attrs_only = var6;
  37.       this.m_filter = var7;
  38.       this.m_attrs = var8;
  39.    }
  40.  
  41.    public int getType() {
  42.       return 3;
  43.    }
  44.  
  45.    public void setBaseDN(String var1) {
  46.       this.m_base_dn = var1;
  47.    }
  48.  
  49.    public String getBaseDN() {
  50.       return this.m_base_dn;
  51.    }
  52.  
  53.    public BERElement getBERElement() {
  54.       BERSequence var1 = new BERSequence();
  55.       ((BERConstruct)var1).addElement(new BEROctetString(this.m_base_dn));
  56.       ((BERConstruct)var1).addElement(new BEREnumerated(this.m_scope));
  57.       ((BERConstruct)var1).addElement(new BEREnumerated(this.m_deref));
  58.       ((BERConstruct)var1).addElement(new BERInteger(this.m_size_limit));
  59.       ((BERConstruct)var1).addElement(new BERInteger(this.m_time_limit));
  60.       ((BERConstruct)var1).addElement(new BERBoolean(this.m_attrs_only));
  61.       JDAPFilter var2 = JDAPFilter.getFilter(this.m_filter);
  62.       if (var2 == null) {
  63.          return null;
  64.       } else {
  65.          ((BERConstruct)var1).addElement(var2.getBERElement());
  66.          BERSequence var3 = new BERSequence();
  67.          if (this.m_attrs != null) {
  68.             for(int var4 = 0; var4 < this.m_attrs.length; ++var4) {
  69.                ((BERConstruct)var3).addElement(new BEROctetString(this.m_attrs[var4]));
  70.             }
  71.          }
  72.  
  73.          ((BERConstruct)var1).addElement(var3);
  74.          BERTag var5 = new BERTag(99, var1, true);
  75.          return var5;
  76.       }
  77.    }
  78.  
  79.    public String toString() {
  80.       String var1 = null;
  81.       if (this.m_attrs != null) {
  82.          for(int var2 = 0; var2 < this.m_attrs.length; ++var2) {
  83.             if (var2 != 0) {
  84.                var1 = var1 + "+";
  85.             }
  86.  
  87.             var1 = var1 + this.m_attrs[var2];
  88.          }
  89.       }
  90.  
  91.       return "JDAPSearchRequest {baseObject=" + this.m_base_dn + ", scope=" + this.m_scope + ", derefAliases=" + this.m_deref + ",sizeLimit=" + this.m_size_limit + ", timeLimit=" + this.m_time_limit + ", attrsOnly=" + this.m_attrs_only + ", filter=" + this.m_filter + ", attributes=" + var1 + "}";
  92.    }
  93. }
  94.