00001 /* 00002 * Copyright 2000, OpenLDAP Foundation, All Rights Reserved. 00003 * COPYING RESTRICTIONS APPLY, see COPYRIGHT file 00004 */ 00005 00006 #ifndef LDAP_SEARCH_REQUEST_H 00007 #define LDAP_SEARCH_REQUEST_H 00008 00009 #include <queue> 00010 #include <LDAPRequest.h> 00011 00012 class LDAPSearchReference; 00013 class LDAPReferral; 00014 class LDAPUrl; 00015 00016 class LDAPSearchRequest : public LDAPRequest{ 00017 00018 public : 00019 LDAPSearchRequest(const LDAPSearchRequest& req); 00020 00021 LDAPSearchRequest(const std::string& base, int scope, const std::string& filter, 00022 const StringList& attrs, bool attrsOnly, 00023 LDAPAsynConnection *connect, 00024 const LDAPConstraints* cons, bool isReferral=false, 00025 const LDAPRequest* parent=0); 00026 virtual ~LDAPSearchRequest(); 00027 virtual LDAPMessageQueue* sendRequest(); 00028 virtual LDAPRequest* followReferral(LDAPMsg* ref); 00029 virtual bool equals(const LDAPRequest* req) const; 00030 00031 private : 00032 std::string m_base; 00033 int m_scope; 00034 std::string m_filter; 00035 StringList m_attrs; 00036 bool m_attrsOnly; 00037 00038 //no default constructor 00039 LDAPSearchRequest(){}; 00040 }; 00041 00042 #endif //LDAP_SEARCH_REQUEST_H