1 // $OpenLDAP$ 2 /* 3 * Copyright 2000-2021 The OpenLDAP Foundation, All Rights Reserved. 4 * COPYING RESTRICTIONS APPLY, see COPYRIGHT file 5 */ 6 7 #ifndef LDAP_SEARCH_RESULTS_H 8 #define LDAP_SEARCH_RESULTS_H 9 10 #include <LDAPEntry.h> 11 #include <LDAPEntryList.h> 12 #include <LDAPMessage.h> 13 #include <LDAPMessageQueue.h> 14 #include <LDAPReferenceList.h> 15 #include <LDAPSearchReference.h> 16 17 class LDAPResult; 18 19 /** 20 * The class stores the results of a synchronous SEARCH-Operation 21 */ 22 class LDAPSearchResults{ 23 public: 24 /** 25 * Default-Constructor 26 */ 27 LDAPSearchResults(); 28 29 /** 30 * For internal use only. 31 * 32 * This method reads Search result entries from a 33 * LDAPMessageQueue-object. 34 * @param msg The message queue to read 35 */ 36 LDAPResult* readMessageQueue(LDAPMessageQueue* msg); 37 38 /** 39 * The method is used by the client-application to read the 40 * result entries of the SEARCH-Operation. Every call of this 41 * method returns one entry. If all entries were read it return 0. 42 * @throws LDAPReferralException If a Search Reference was 43 * returned by the server 44 * @returns A LDAPEntry-object as a result of a SEARCH-Operation or 45 * 0 if no more entries are there to return. 46 */ 47 LDAPEntry* getNext(); 48 private : 49 LDAPEntryList entryList; 50 LDAPReferenceList refList; 51 LDAPEntryList::const_iterator entryPos; 52 LDAPReferenceList::const_iterator refPos; 53 }; 54 #endif //LDAP_SEARCH_RESULTS_H 55 56 57