| 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 aaf54c5f33e7c9555ec39219caba9ece4472ecd6..53204d163e549f211aa0774291f43051a6a0318c 100644
|
| --- a/net/socket/transport_client_socket_pool.cc
|
| +++ b/net/socket/transport_client_socket_pool.cc
|
| @@ -18,6 +18,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,
|
| + const SocketPerformanceWatcherFactory* socket_performance_watcher_factory,
|
| HostResolver* host_resolver,
|
| Delegate* delegate,
|
| NetLog* net_log)
|
| @@ -207,6 +209,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);
|
| @@ -295,7 +298,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,
|
| @@ -414,7 +418,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(
|
| @@ -486,15 +491,10 @@ TransportClientSocketPool::TransportConnectJobFactory::NewConnectJob(
|
| const std::string& group_name,
|
| const PoolBase::Request& request,
|
| ConnectJob::Delegate* delegate) const {
|
| - return scoped_ptr<ConnectJob>(
|
| - new TransportConnectJob(group_name,
|
| - request.priority(),
|
| - request.params(),
|
| - ConnectionTimeout(),
|
| - client_socket_factory_,
|
| - host_resolver_,
|
| - delegate,
|
| - net_log_));
|
| + return scoped_ptr<ConnectJob>(new TransportConnectJob(
|
| + group_name, request.priority(), request.params(), ConnectionTimeout(),
|
| + client_socket_factory_, socket_performance_watcher_factory_,
|
| + host_resolver_, delegate, net_log_));
|
| }
|
|
|
| base::TimeDelta
|
| @@ -508,6 +508,7 @@ TransportClientSocketPool::TransportClientSocketPool(
|
| int max_sockets_per_group,
|
| HostResolver* host_resolver,
|
| ClientSocketFactory* client_socket_factory,
|
| + const SocketPerformanceWatcherFactory* socket_performance_watcher_factory,
|
| NetLog* net_log)
|
| : base_(NULL,
|
| max_sockets,
|
| @@ -515,6 +516,7 @@ TransportClientSocketPool::TransportClientSocketPool(
|
| ClientSocketPool::unused_idle_socket_timeout(),
|
| ClientSocketPool::used_idle_socket_timeout(),
|
| new TransportConnectJobFactory(client_socket_factory,
|
| + socket_performance_watcher_factory,
|
| host_resolver,
|
| net_log)) {
|
| base_.EnableConnectBackupJobs();
|
|
|