ldapsdk  0.0.1
LDAPSearchRequest.h
Go to the documentation of this file.
1 // $OpenLDAP$
2 /*
3  * Copyright 2000-2013 The OpenLDAP Foundation, All Rights Reserved.
4  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
5  */
6 
7 #ifndef LDAP_SEARCH_REQUEST_H
8 #define LDAP_SEARCH_REQUEST_H
9 
10 #include <queue>
11 #include <LDAPRequest.h>
12 
14 class LDAPReferral;
15 class LDAPUrl;
16 
18 
19  public :
21 
22  LDAPSearchRequest(const std::string& base, int scope, const std::string& filter,
23  const StringList& attrs, bool attrsOnly,
24  LDAPAsynConnection *connect,
25  const LDAPConstraints* cons, bool isReferral=false,
26  const LDAPRequest* parent=0);
27  virtual ~LDAPSearchRequest();
28  virtual LDAPMessageQueue* sendRequest();
29  virtual LDAPRequest* followReferral(LDAPMsg* ref);
30  virtual bool equals(const LDAPRequest* req) const;
31 
32  private :
33  std::string m_base;
34  int m_scope;
35  std::string m_filter;
36  StringList m_attrs;
37  bool m_attrsOnly;
38 
39  //no default constructor
41 };
42 
43 #endif //LDAP_SEARCH_REQUEST_H
LDAPException
This class is only thrown as an Exception and used to signalize error conditions during LDAP-operatio...
Definition: LDAPException.h:23
LDAPRequest::m_connection
LDAPAsynConnection * m_connection
Definition: LDAPRequest.h:82
LDAPRequest::m_requestType
int m_requestType
Definition: LDAPRequest.h:80
LDAPConstraints::getTimeoutStruct
timeval * getTimeoutStruct() const
Definition: LDAPConstraints.cpp:157
LDAPAsynConnection
This class represents an asynchronous connection to an LDAP-Server.
Definition: LDAPAsynConnection.h:45
LDAP_DEBUG_TRACE
#define LDAP_DEBUG_TRACE
Definition: debug.h:12
LDAPMsg
This class represents any type of LDAP- Message returned from the server.
Definition: LDAPMessage.h:23
StringList::toCharArray
char ** toCharArray() const
The methods converts the list to a 0-terminated array of c-Strings.
Definition: StringList.cpp:36
LDAPSearchRequest::followReferral
virtual LDAPRequest * followReferral(LDAPMsg *ref)
Definition: LDAPSearchRequest.cpp:89
LDAPUrl
This class is used to analyze and store LDAP-Urls as returned by a LDAP-Server as Referrals and Searc...
Definition: LDAPUrl.h:22
LDAPConstraints::getAliasDeref
int getAliasDeref() const
Definition: LDAPConstraints.cpp:109
LDAPMsg::SEARCH_REFERENCE
static const int SEARCH_REFERENCE
Definition: LDAPMessage.h:29
LDAPConstraints::getSrvCtrlsArray
LDAPControl ** getSrvCtrlsArray() const
Definition: LDAPConstraints.cpp:139
LDAPRequest::equals
virtual bool equals(const LDAPRequest *req) const
Compare this request with another on.
Definition: LDAPRequest.cpp:116
LDAPMsg::getMessageType
int getMessageType()
Definition: LDAPMessage.cpp:55
LDAP_DEBUG_PARAMETER
#define LDAP_DEBUG_PARAMETER
Definition: debug.h:15
LDAPRequest::isReferral
bool isReferral() const
Definition: LDAPRequest.cpp:111
LDAPSearchRequest.h
LDAPUrl.h
DEBUG
#define DEBUG(level, arg)
Definition: debug.h:30
LDAPConstraints
This class represents some options that can be set for a LDAPConnection operation.
Definition: LDAPConstraints.h:27
LDAPAsynConnection::SEARCH_ONE
static const int SEARCH_ONE
Constant for the Search-Operation to indicate a One-Level Search.
Definition: LDAPAsynConnection.h:57
LDAP_DEBUG_DESTROY
#define LDAP_DEBUG_DESTROY
Definition: debug.h:14
LDAPAsynConnection::getSessionHandle
LDAP * getSessionHandle() const
Definition: LDAPAsynConnection.cpp:292
LDAPSearchReference
This class is used to represent Continuation References that were returned during a SEARCH-Operation.
Definition: LDAPSearchReference.h:21
LDAPRequest::m_cons
LDAPConstraints * m_cons
Definition: LDAPRequest.h:81
LDAPRequest::m_msgID
int m_msgID
Definition: LDAPRequest.h:85
LDAPConstraints::getSizeLimit
int getSizeLimit() const
Definition: LDAPConstraints.cpp:119
LDAPResult
This class is for representing LDAP-Result-Messages.
Definition: LDAPResult.h:30
LDAPMessageQueue
This class is created for the asynchronous LDAP-operations.
Definition: LDAPMessageQueue.h:27
time.h
LDAP_DEBUG_CONSTRUCT
#define LDAP_DEBUG_CONSTRUCT
Definition: debug.h:13
LDAPSearchRequest::equals
virtual bool equals(const LDAPRequest *req) const
Compare this request with another on.
Definition: LDAPSearchRequest.cpp:124
LDAPUrlList
This container class is used to store multiple LDAPUrl-objects.
Definition: LDAPUrlList.h:16
LDAPSearchRequest::~LDAPSearchRequest
virtual ~LDAPSearchRequest()
Definition: LDAPSearchRequest.cpp:56
LDAPSearchRequest::LDAPSearchRequest
LDAPSearchRequest(const LDAPSearchRequest &req)
Definition: LDAPSearchRequest.cpp:19
LDAPException.h
LDAPControlSet::freeLDAPControlArray
static void freeLDAPControlArray(LDAPControl **ctrl)
Definition: LDAPControlSet.cpp:76
LDAPSearchRequest
Definition: LDAPSearchRequest.h:17
LDAPAsynConnection::SEARCH_BASE
static const int SEARCH_BASE
Constant for the Search-Operation to indicate a Base-Level Search.
Definition: LDAPAsynConnection.h:51
LDAPConstraints::getClCtrlsArray
LDAPControl ** getClCtrlsArray() const
Definition: LDAPConstraints.cpp:148
LDAPSearchRequest::sendRequest
virtual LDAPMessageQueue * sendRequest()
This method encodes the request an calls the apprpriate functions of the C-API to send the Request to...
Definition: LDAPSearchRequest.cpp:60
config.h
StringList
Container class to store multiple string-objects.
Definition: StringList.h:15
LDAPRequest::getConnection
const LDAPAsynConnection * getConnection() const
Definition: LDAPRequest.cpp:86
LDAPUrlList::const_iterator
ListType::const_iterator const_iterator
Definition: LDAPUrlList.h:20
LDAPSearchReference.h
LDAPResult.h
LDAPRequest.h
LDAPRequest
For internal use only.
Definition: LDAPRequest.h:25
LDAPAsynConnection::referralConnect
LDAPAsynConnection * referralConnect(const LDAPUrlList &urls, LDAPUrlList::const_iterator &usedUrl, const LDAPConstraints *cons) const
This method is used internally for automatic referral chasing.
Definition: LDAPAsynConnection.cpp:307
LDAPRequest::SEARCH
static const int SEARCH
Definition: LDAPRequest.h:30
debug.h