Index: net/socket/transport_client_socket_pool.cc |
diff --git a/net/socket/transport_client_socket_pool.cc b/net/socket/transport_client_socket_pool.cc |
index 94f97c26c8a86f4510ad0ad8d758da5ee8b8f270..730134fffddba2d34269e56c8ae65331983d92f9 100644 |
--- a/net/socket/transport_client_socket_pool.cc |
+++ b/net/socket/transport_client_socket_pool.cc |
@@ -19,6 +19,7 @@ |
#include "base/values.h" |
#include "net/base/ip_endpoint.h" |
#include "net/base/net_errors.h" |
+#include "net/base/socket_performance_watcher_factory.h" |
#include "net/log/net_log.h" |
#include "net/socket/client_socket_factory.h" |
#include "net/socket/client_socket_handle.h" |
@@ -198,6 +199,7 @@ TransportConnectJob::TransportConnectJob( |
const scoped_refptr<TransportSocketParams>& params, |
base::TimeDelta timeout_duration, |
ClientSocketFactory* client_socket_factory, |
+ SocketPerformanceWatcherFactory* socket_performance_watcher_factory, |
HostResolver* host_resolver, |
Delegate* delegate, |
NetLog* net_log) |
@@ -208,6 +210,7 @@ TransportConnectJob::TransportConnectJob( |
delegate, |
BoundNetLog::Make(net_log, NetLog::SOURCE_CONNECT_JOB)), |
helper_(params, client_socket_factory, host_resolver, &connect_timing_), |
+ socket_performance_watcher_factory_(socket_performance_watcher_factory), |
interval_between_connects_(CONNECT_INTERVAL_GT_20MS), |
resolve_result_(OK) { |
helper_.SetOnIOComplete(this); |
@@ -296,7 +299,8 @@ int TransportConnectJob::DoTransportConnect() { |
TransportConnectJobHelper::STATE_TRANSPORT_CONNECT_COMPLETE); |
transport_socket_ = |
helper_.client_socket_factory()->CreateTransportClientSocket( |
- helper_.addresses(), net_log().net_log(), net_log().source()); |
+ helper_.addresses(), socket_performance_watcher_factory_, |
+ net_log().net_log(), net_log().source()); |
// If the list contains IPv6 and IPv4 addresses, the first address will |
// be IPv6, and the IPv4 addresses will be tried as fallback addresses, |
@@ -415,7 +419,8 @@ void TransportConnectJob::DoIPv6FallbackTransportConnect() { |
MakeAddressListStartWithIPv4(fallback_addresses_.get()); |
fallback_transport_socket_ = |
helper_.client_socket_factory()->CreateTransportClientSocket( |
- *fallback_addresses_, net_log().net_log(), net_log().source()); |
+ *fallback_addresses_, socket_performance_watcher_factory_, |
+ net_log().net_log(), net_log().source()); |
fallback_connect_start_time_ = base::TimeTicks::Now(); |
int rv = fallback_transport_socket_->Connect( |
base::Bind( |
@@ -490,7 +495,7 @@ TransportClientSocketPool::TransportConnectJobFactory::NewConnectJob( |
return scoped_ptr<ConnectJob>(new TransportConnectJob( |
group_name, request.priority(), request.respect_limits(), |
request.params(), ConnectionTimeout(), client_socket_factory_, |
- host_resolver_, delegate, net_log_)); |
+ socket_performance_watcher_factory_, host_resolver_, delegate, net_log_)); |
} |
base::TimeDelta |
@@ -504,6 +509,7 @@ TransportClientSocketPool::TransportClientSocketPool( |
int max_sockets_per_group, |
HostResolver* host_resolver, |
ClientSocketFactory* client_socket_factory, |
+ SocketPerformanceWatcherFactory* socket_performance_watcher_factory, |
NetLog* net_log) |
: base_(NULL, |
max_sockets, |
@@ -512,6 +518,7 @@ TransportClientSocketPool::TransportClientSocketPool( |
ClientSocketPool::used_idle_socket_timeout(), |
new TransportConnectJobFactory(client_socket_factory, |
host_resolver, |
+ socket_performance_watcher_factory, |
net_log)) { |
base_.EnableConnectBackupJobs(); |
} |