From 62635c758fce2b22a1cf5acdc57579bb5801b2e3 Mon Sep 17 00:00:00 2001 From: "rch@chromium.org" Date: Thu, 10 Mar 2011 04:16:25 +0000 Subject: Define a new CertDatabase::Observer abstract class which can be implemented by classes which wish to be notified when a new ssl client cert is added. Register SpdySessionPool, SocketPoolManager and SSLClientAuthCache as observers. Notify observers in CertDatabase::AddUserCert(); BUG=75326 Review URL: http://codereview.chromium.org/6588014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77599 0039d316-1c4b-4281-b951-d872f2087c98 --- net/socket/client_socket_pool_manager.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'net/socket/client_socket_pool_manager.h') diff --git a/net/socket/client_socket_pool_manager.h b/net/socket/client_socket_pool_manager.h index 7d610a9..45a0c23 100644 --- a/net/socket/client_socket_pool_manager.h +++ b/net/socket/client_socket_pool_manager.h @@ -17,6 +17,7 @@ #include "base/stl_util-inl.h" #include "base/template_util.h" #include "base/threading/non_thread_safe.h" +#include "net/base/cert_database.h" #include "net/socket/client_socket_pool_histograms.h" class Value; @@ -57,7 +58,8 @@ class OwnedPoolMap : public std::map { } // namespace internal -class ClientSocketPoolManager : public base::NonThreadSafe { +class ClientSocketPoolManager : public base::NonThreadSafe, + public CertDatabase::Observer { public: ClientSocketPoolManager(NetLog* net_log, ClientSocketFactory* socket_factory, @@ -94,6 +96,9 @@ class ClientSocketPoolManager : public base::NonThreadSafe { // responsible for deleting the returned value. Value* SocketPoolInfoToValue() const; + // CertDatabase::Observer methods: + virtual void OnUserCertAdded(X509Certificate* cert); + private: friend class HttpNetworkSessionPeer; -- cgit v1.1