| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/socket/websocket_transport_client_socket_pool.h" | 5 #include "net/socket/websocket_transport_client_socket_pool.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 222 OnSubJobComplete(result, ipv4_job_.get()); | 222 OnSubJobComplete(result, ipv4_job_.get()); |
| 223 } | 223 } |
| 224 | 224 |
| 225 int WebSocketTransportConnectJob::ConnectInternal() { | 225 int WebSocketTransportConnectJob::ConnectInternal() { |
| 226 return helper_.DoConnectInternal(this); | 226 return helper_.DoConnectInternal(this); |
| 227 } | 227 } |
| 228 | 228 |
| 229 WebSocketTransportClientSocketPool::WebSocketTransportClientSocketPool( | 229 WebSocketTransportClientSocketPool::WebSocketTransportClientSocketPool( |
| 230 int max_sockets, | 230 int max_sockets, |
| 231 int max_sockets_per_group, | 231 int max_sockets_per_group, |
| 232 ClientSocketPoolHistograms* histograms, | |
| 233 HostResolver* host_resolver, | 232 HostResolver* host_resolver, |
| 234 ClientSocketFactory* client_socket_factory, | 233 ClientSocketFactory* client_socket_factory, |
| 235 NetLog* net_log) | 234 NetLog* net_log) |
| 236 : TransportClientSocketPool(max_sockets, | 235 : TransportClientSocketPool(max_sockets, |
| 237 max_sockets_per_group, | 236 max_sockets_per_group, |
| 238 histograms, | |
| 239 host_resolver, | 237 host_resolver, |
| 240 client_socket_factory, | 238 client_socket_factory, |
| 241 net_log), | 239 net_log), |
| 242 connect_job_delegate_(this), | 240 connect_job_delegate_(this), |
| 243 histograms_(histograms), | |
| 244 pool_net_log_(net_log), | 241 pool_net_log_(net_log), |
| 245 client_socket_factory_(client_socket_factory), | 242 client_socket_factory_(client_socket_factory), |
| 246 host_resolver_(host_resolver), | 243 host_resolver_(host_resolver), |
| 247 max_sockets_(max_sockets), | 244 max_sockets_(max_sockets), |
| 248 handed_out_socket_count_(0), | 245 handed_out_socket_count_(0), |
| 249 flushing_(false), | 246 flushing_(false), |
| 250 weak_factory_(this) {} | 247 weak_factory_(this) {} |
| 251 | 248 |
| 252 WebSocketTransportClientSocketPool::~WebSocketTransportClientSocketPool() { | 249 WebSocketTransportClientSocketPool::~WebSocketTransportClientSocketPool() { |
| 253 // Clean up any pending connect jobs. | 250 // Clean up any pending connect jobs. |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 449 dict->SetInteger("max_socket_count", max_sockets_); | 446 dict->SetInteger("max_socket_count", max_sockets_); |
| 450 dict->SetInteger("max_sockets_per_group", max_sockets_); | 447 dict->SetInteger("max_sockets_per_group", max_sockets_); |
| 451 dict->SetInteger("pool_generation_number", 0); | 448 dict->SetInteger("pool_generation_number", 0); |
| 452 return dict; | 449 return dict; |
| 453 } | 450 } |
| 454 | 451 |
| 455 TimeDelta WebSocketTransportClientSocketPool::ConnectionTimeout() const { | 452 TimeDelta WebSocketTransportClientSocketPool::ConnectionTimeout() const { |
| 456 return TimeDelta::FromSeconds(kTransportConnectJobTimeoutInSeconds); | 453 return TimeDelta::FromSeconds(kTransportConnectJobTimeoutInSeconds); |
| 457 } | 454 } |
| 458 | 455 |
| 459 ClientSocketPoolHistograms* WebSocketTransportClientSocketPool::histograms() | |
| 460 const { | |
| 461 return histograms_; | |
| 462 } | |
| 463 | |
| 464 bool WebSocketTransportClientSocketPool::IsStalled() const { | 456 bool WebSocketTransportClientSocketPool::IsStalled() const { |
| 465 return !stalled_request_queue_.empty(); | 457 return !stalled_request_queue_.empty(); |
| 466 } | 458 } |
| 467 | 459 |
| 468 void WebSocketTransportClientSocketPool::OnConnectJobComplete( | 460 void WebSocketTransportClientSocketPool::OnConnectJobComplete( |
| 469 int result, | 461 int result, |
| 470 WebSocketTransportConnectJob* job) { | 462 WebSocketTransportConnectJob* job) { |
| 471 DCHECK_NE(ERR_IO_PENDING, result); | 463 DCHECK_NE(ERR_IO_PENDING, result); |
| 472 | 464 |
| 473 scoped_ptr<StreamSocket> socket = job->PassSocket(); | 465 scoped_ptr<StreamSocket> socket = job->PassSocket(); |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 648 const BoundNetLog& net_log) | 640 const BoundNetLog& net_log) |
| 649 : params(params), | 641 : params(params), |
| 650 priority(priority), | 642 priority(priority), |
| 651 handle(handle), | 643 handle(handle), |
| 652 callback(callback), | 644 callback(callback), |
| 653 net_log(net_log) {} | 645 net_log(net_log) {} |
| 654 | 646 |
| 655 WebSocketTransportClientSocketPool::StalledRequest::~StalledRequest() {} | 647 WebSocketTransportClientSocketPool::StalledRequest::~StalledRequest() {} |
| 656 | 648 |
| 657 } // namespace net | 649 } // namespace net |
| OLD | NEW |