]> git.sur5r.net Git - openldap/commitdiff
- some code cleanups
authorRalf Haferkamp <ralf@openldap.org>
Tue, 23 Apr 2002 15:28:11 +0000 (15:28 +0000)
committerRalf Haferkamp <ralf@openldap.org>
Tue, 23 Apr 2002 15:28:11 +0000 (15:28 +0000)
- fix for the client caching code (cache is flushed after modifications
  rather than removing only the changed entry)

The code was submitted by Jeff Costlow <j.costlow@f5.com> under the
following terms:

Copyright 2002, F5 Networks, Inc, All rights reserved.
This software is not subject to any license of F5 Networks.

This is free software; you can redistribute and use it
under the same terms as OpenLDAP itself.

13 files changed:
contrib/ldapc++/src/LDAPAsynConnection.cpp
contrib/ldapc++/src/LDAPAsynConnection.h
contrib/ldapc++/src/LDAPDeleteRequest.cpp
contrib/ldapc++/src/LDAPEntry.cpp
contrib/ldapc++/src/LDAPEntry.h
contrib/ldapc++/src/LDAPException.h
contrib/ldapc++/src/LDAPModList.h
contrib/ldapc++/src/LDAPModifyRequest.cpp
contrib/ldapc++/src/LDAPReferenceList.h
contrib/ldapc++/src/LDAPReferralException.h
contrib/ldapc++/src/LDAPUrl.h
contrib/ldapc++/src/LDAPUrlList.h
contrib/ldapc++/src/StringList.h

index 2c1be7a29970226e53a3e67b08cae60696534391..6a5d5c464c17fafe8e3e048a98b1c90699912208 100644 (file)
@@ -31,6 +31,7 @@ LDAPAsynConnection::LDAPAsynConnection(const string& hostname, int port,
     DEBUG(LDAP_DEBUG_CONSTRUCT | LDAP_DEBUG_PARAMETER,
             "   host:" << hostname << endl << "   port:" << port << endl);
     cur_session=0;
+    m_constr = 0;
     this->init(hostname, port);
     this->setConstraints(cons);
 }
index d57035d949752ca047ef426c5ab9e62d3074a1b7..fdef9ccd5f44e6926a291ca3dd3e096d6b27c774 100644 (file)
@@ -160,7 +160,8 @@ class LDAPAsynConnection{
          * @param cons  A set of constraints that should be used with this
          *              request
          */
-        LDAPMessageQueue* compare(const std::string& dn, const LDAPAttribute& attr, 
+        LDAPMessageQueue* compare(const std::string& dn, 
+                const LDAPAttribute& attr, 
                 const LDAPConstraints *cons=0);
 
         /** Add an entry to the directory
@@ -179,12 +180,13 @@ class LDAPAsynConnection{
          *      destination server, a LDAPException-object contains the
          *      error that occured.
          * @param dn Distiguished Name of the Entry to modify
-         * @param modstd::list A set of modification that should be applied
+         * @param modlist A set of modification that should be applied
          *      to the Entry
          * @param cons  A set of constraints that should be used with this
          *              request
          */
-        LDAPMessageQueue* modify(const std::string& dn, const LDAPModList *modlist,
+        LDAPMessageQueue* modify(const std::string& dn, 
+                const LDAPModList *modlist,
                 const LDAPConstraints *cons=0);
 
         /** modify the DN of an entry
@@ -201,7 +203,8 @@ class LDAPAsynConnection{
          * @param newParentDN   The DN of the new parent entry of the entry
          *                      0 to keep the old one
          */
-        LDAPMessageQueue* rename(const std::string& dn, const std::string& newRDN,
+        LDAPMessageQueue* rename(const std::string& dn, 
+                const std::string& newRDN,
                 bool delOldRDN=false, const std::string& newParentDN="",
                 const LDAPConstraints* cons=0);
         
index e6fbb251b0f89bb392fdbeb4a35f3ec971e05e57..78d086f5fc306e688c51b82535e1e64c2f3cbd6e 100644 (file)
@@ -37,7 +37,8 @@ LDAPDeleteRequest::~LDAPDeleteRequest(){
           "LDAPDeleteRequest::~LDAPDeleteRequest()" << endl);
     // TODO -- flush the entire cache here?  or does this invalidate
     // cached searches that may have found the deleted entry.
-    m_connection->uncache_entry(m_dn);
+    // m_connection->uncache_entry(m_dn);
+    m_connection->flush_cache();
 }
 
 LDAPMessageQueue* LDAPDeleteRequest::sendRequest(){
index 3af69cc593867b0d97dfbb6a0e2f1069ed1a7382..eb3dd5d6abdbd5d46a8827bca6d839bd6b92c4b6 100644 (file)
@@ -30,7 +30,7 @@ LDAPEntry::LDAPEntry(const LDAPAsynConnection *ld, LDAPMessage *msg){
     DEBUG(LDAP_DEBUG_CONSTRUCT,"LDAPEntry::LDAPEntry()" << endl);
     char* tmp=ldap_get_dn(ld->getSessionHandle(),msg);
     m_dn=string(tmp);
-    free(tmp);
+    ldap_memfree(tmp);
     m_attrs = new LDAPAttributeList(ld, msg);
 }
 
@@ -56,7 +56,7 @@ void LDAPEntry::setAttributes(LDAPAttributeList *attrs){
     m_attrs=attrs;
 }
 
-const string LDAPEntry::getDN() const{
+const string& LDAPEntry::getDN() const{
     DEBUG(LDAP_DEBUG_TRACE,"LDAPEntry::getDN()" << endl);
     return m_dn;
 }
index ebd4153f05c29be6cfbeaf6f35624ec5e633bdcd..c49e26d722cf755e03a72f34c49a9bfc19efad9d 100644 (file)
@@ -59,7 +59,7 @@ class LDAPEntry{
         /**
          * @returns The current DN of the entry.
          */
-               const std::string getDN() const ;
+               const std::string& getDN() const ;
 
         /**
          * @returns A const pointer to the attributes of the entry.  
index be4873a534da85c1248ecaa89c9a21d8b8d0a562..09d94f4ab5633596ba43cb6e0a911e1e44890dc4 100644 (file)
@@ -22,7 +22,7 @@ class LDAPException{
         /**
          * Constructs a LDAPException-object from the parameters
          * @param res_code A valid LDAP result code.
-         * @param err_std::string    An addional error message for the error
+         * @param err_string    An addional error message for the error
          *                      that happend (optional)
          */
                LDAPException(int res_code, const std::string& err_string=std::string());
index 0edcd9e86e953052bc9d287842b49017431e2468..313808d5dd72eeb3e78503ec43501ab4ad762a93 100644 (file)
@@ -20,7 +20,7 @@ class LDAPModList{
 
        public : 
         /**
-         * Constructs an empty std::list.
+         * Constructs an empty list.
          */   
                LDAPModList();
                
@@ -30,13 +30,13 @@ class LDAPModList{
         LDAPModList(const LDAPModList&);
 
         /**
-         * Adds one element to the end of the std::list.
+         * Adds one element to the end of the list.
          * @param mod The LDAPModification to add to the std::list.
          */
                void addModification(const LDAPModification &mod);
 
         /**
-         * Translates the std::list to a 0-terminated array of
+         * Translates the list to a 0-terminated array of
          * LDAPMod-structures as needed by the C-API
          */
         LDAPMod** toLDAPModArray();
index 579ff8b74f3b23c5ddd073021b6f5b14c8a6ecac..3d688ca35372faf0b5a28e68a6f98d373e280376 100644 (file)
@@ -40,7 +40,9 @@ LDAPModifyRequest::~LDAPModifyRequest(){
             "LDAPModifyRequest::~LDAPModifyRequest()" << endl);
     delete m_modList;
     // flush this entry from cache.
-    m_connection->uncache_entry(m_dn);
+    //m_connection->uncache_entry(m_dn);
+    // I think we need to do this... (j.costlow)
+    m_connection->flush_cache();
 }
 
 LDAPMessageQueue* LDAPModifyRequest::sendRequest(){
index d528b2d65d5e24492412e9ada739765fdf6dac44..0aa5a18219cb4959b1fb8418c6401795094c1555 100644 (file)
@@ -13,7 +13,7 @@ class LDAPSearchReference;
 typedef std::list<LDAPSearchReference> RefList;
 
 /**
- * Container class for storing a std::list of Search References
+ * Container class for storing a list of Search References
  *
  * Used internally only by LDAPSearchResults
  */
@@ -22,7 +22,7 @@ class LDAPReferenceList{
        typedef RefList::const_iterator const_iterator;
 
         /**
-         * Constructs an empty std::list.
+         * Constructs an empty list.
          */   
         LDAPReferenceList();
 
index 5ec0d2d4d374951ebbd415332fee6e0948423c1b..f604f67adc7adc3efab64265fb1a356c3af6462d 100644 (file)
@@ -21,7 +21,7 @@ class LDAPReferralException : public LDAPException{
 
     public :
         /**
-         * Creates an object that is initialized with a std::list of URLs
+         * Creates an object that is initialized with a list of URLs
          */
         LDAPReferralException(const LDAPUrlList& urls);
 
index f2522d945ae019842fe98becda313d7c1b208ee1..9314aa09b272343f34484e3c2986dfea562379ad 100644 (file)
@@ -22,7 +22,7 @@ class LDAPUrl{
 
     public : 
         /**
-         * Create a new object from a c-std::string that contains a LDAP-Url
+         * Create a new object from a c-string that contains a LDAP-Url
          */
         LDAPUrl(const char *url);
 
@@ -43,7 +43,7 @@ class LDAPUrl{
         int getScope() const;
 
         /**
-         * @return The complete URL as a std::string
+         * @return The complete URL as a string
          */
         const std::string& getURLString() const;
 
index 3f905e42a2d78a2990f2b7c96ca784d109bb1898..1247fc6ad1fff67c0c3955a0339bb7d5c0bbb7aa 100644 (file)
@@ -19,7 +19,7 @@ class LDAPUrlList{
        typedef UrlList::const_iterator const_iterator;
 
         /**
-         * Constructs an empty std::list.
+         * Constructs an empty list.
          */   
         LDAPUrlList();
 
@@ -32,7 +32,7 @@ class LDAPUrlList{
          * For internal use only
          *
          * This constructor is used by the library internally to create a
-         * std::list of URLs from a array of C-std::strings that was return by
+         * std::list of URLs from a array of C-strings that was return by
          * the C-API
          */
         LDAPUrlList(char** urls);
index 09fe6754d9c78b71e15b4477584f63f5ea7c4b5c..caa8ddd147402ec842efcc4a4e946eccc7602c48 100644 (file)
@@ -11,7 +11,7 @@
 typedef std::list<std::string> ListType;
 
 /**
- * Container class to store multiple std::string-objects
+ * Container class to store multiple string-objects
  */
 class StringList{
     private:
@@ -21,7 +21,7 @@ class StringList{
        typedef ListType::const_iterator const_iterator;
    
         /**
-         * Constructs an empty std::list.
+         * Constructs an empty list.
          */   
         StringList();
 
@@ -34,7 +34,7 @@ class StringList{
          * For internal use only
          *
          * This constructor is used by the library internally to create a
-         * std::list of std::string from a array for c-Strings (char*)thar was
+         * list of string from a array for c-Strings (char*)thar was
          * returned by the C-API
          */
         StringList(char** values);