ekiga r6470 - in trunk: . lib/engine/account/skel



Author: dsandras
Date: Thu Jul 17 21:04:24 2008
New Revision: 6470
URL: http://svn.gnome.org/viewvc/ekiga?rev=6470&view=rev

Log:
Allow searching for an account following the destination host.


Modified:
   trunk/ChangeLog
   trunk/lib/engine/account/skel/account-core.h
   trunk/lib/engine/account/skel/bank-impl.h

Modified: trunk/lib/engine/account/skel/account-core.h
==============================================================================
--- trunk/lib/engine/account/skel/account-core.h	(original)
+++ trunk/lib/engine/account/skel/account-core.h	Thu Jul 17 21:04:24 2008
@@ -139,8 +139,10 @@
     typedef enum { Processing, Registered, Unregistered, RegistrationFailed, UnregistrationFailed } RegistrationState;
 
     /** Find the account with the given address of record in the Bank
-     * @param aor is the address of record of the Account
+     * @param aor is the address of record of the Account or the host to look 
+     *        for
      * @return The Ekiga::Account if an Account was found, false otherwise.
+     *         The returned account should not be freed.
      */
     Ekiga::Account *find_account (const std::string & aor);
 

Modified: trunk/lib/engine/account/skel/bank-impl.h
==============================================================================
--- trunk/lib/engine/account/skel/bank-impl.h	(original)
+++ trunk/lib/engine/account/skel/bank-impl.h	Thu Jul 17 21:04:24 2008
@@ -99,8 +99,10 @@
     void visit_accounts (sigc::slot<bool, Account &> visitor);
 
     /** Find the account with the given address of record in the Bank
-     * @param aor is the address of record of the Account
+     * @param aor is the address of record of the Account or the host to search 
+     *        for
      * @return The Account corresponding to the find result
+     *         The returned account should not be freed.
      */
     Ekiga::Account *find_account (const std::string & aor);
 
@@ -230,8 +232,15 @@
        it != Lister<T>::end ();
        it++) {
 
-    if (it->get_aor () == aor) {
-      return (&(*it));
+    if (aor.find ("@") != std::string::npos) {
+      if (it->get_aor () == aor) {
+        return (&(*it));
+      }
+    }
+    else {
+      if (it->get_host () == aor) {
+        return (&(*it));
+      }
     }
   }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]