Chromium Code Reviews| Index: net/socket/ssl_client_socket_pool.h |
| diff --git a/net/socket/ssl_client_socket_pool.h b/net/socket/ssl_client_socket_pool.h |
| index 1f43e95f534452721f2acebd2dda5ca3d0829044..8780634360b69e20e84a94b1201f0c0dd769aa1b 100644 |
| --- a/net/socket/ssl_client_socket_pool.h |
| +++ b/net/socket/ssl_client_socket_pool.h |
| @@ -12,6 +12,7 @@ |
| #include "base/memory/ref_counted.h" |
| #include "base/memory/scoped_ptr.h" |
| #include "base/memory/scoped_vector.h" |
| +#include "base/thread_task_runner_handle.h" |
|
Ryan Sleevi
2014/07/10 00:03:22
This should be in the .cc, not the .h
In .h files
mshelley
2014/07/10 00:44:20
Done.
|
| #include "base/time/time.h" |
| #include "net/base/privacy_mode.h" |
| #include "net/dns/host_resolver.h" |
| @@ -116,6 +117,8 @@ class NET_EXPORT_PRIVATE SSLConnectJobMessenger { |
| typedef std::vector<SocketAndCallback> SSLPendingSocketsAndCallbacks; |
| + SSLConnectJobMessenger(); |
| + |
| // Returns true if the given |ssl_socket| should continue its |
| // SSL connection. |
| bool CanProceed(SSLClientSocket* ssl_socket); |
| @@ -132,14 +135,20 @@ class NET_EXPORT_PRIVATE SSLConnectJobMessenger { |
| // its connection. |
| void OnJobSucceeded(); |
| - // Processes pending callbacks when a socket encounters an error |
| + // Posts a task to process pending callbacks when a socket encounters an error |
| // while completing its connection. |
| void OnJobFailed(); |
| + // Determines which pending socket should be then next leading connection, |
| + // and runs that socket's resumption callback. |
| + void ConnectNewLeader(); |
| + |
| private: |
| // Runs all callbacks stored in |pending_sockets_and_callbacks_|. |
| - void RunAllJobs(std::vector<SocketAndCallback>& pending_socket_and_callbacks); |
| + void RunAllJobs( |
| + std::vector<SocketAndCallback>& pending_sockets_and_callbacks); |
| + base::WeakPtrFactory<SSLConnectJobMessenger> weak_factory_; |
| SSLPendingSocketsAndCallbacks pending_sockets_and_callbacks_; |
| std::vector<SSLClientSocket*> connecting_sockets_; |
| }; |