Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(643)

Side by Side Diff: net/spdy/spdy_session_pool.cc

Issue 498373002: Refactor pooling logic into a helper method Disable pooling when there are cert errors. Disable poo… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2125
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/spdy/spdy_session_pool.h ('k') | net/spdy/spdy_session_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/spdy/spdy_session_pool.h" 5 #include "net/spdy/spdy_session_pool.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/metrics/histogram.h" 8 #include "base/metrics/histogram.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "net/base/address_list.h" 10 #include "net/base/address_list.h"
(...skipping 13 matching lines...) Expand all
24 IMPORTED_FROM_SOCKET = 3, 24 IMPORTED_FROM_SOCKET = 3,
25 SPDY_SESSION_GET_MAX = 4 25 SPDY_SESSION_GET_MAX = 4
26 }; 26 };
27 27
28 } // namespace 28 } // namespace
29 29
30 SpdySessionPool::SpdySessionPool( 30 SpdySessionPool::SpdySessionPool(
31 HostResolver* resolver, 31 HostResolver* resolver,
32 SSLConfigService* ssl_config_service, 32 SSLConfigService* ssl_config_service,
33 const base::WeakPtr<HttpServerProperties>& http_server_properties, 33 const base::WeakPtr<HttpServerProperties>& http_server_properties,
34 TransportSecurityState* transport_security_state,
34 bool force_single_domain, 35 bool force_single_domain,
35 bool enable_compression, 36 bool enable_compression,
36 bool enable_ping_based_connection_checking, 37 bool enable_ping_based_connection_checking,
37 NextProto default_protocol, 38 NextProto default_protocol,
38 size_t stream_initial_recv_window_size, 39 size_t stream_initial_recv_window_size,
39 size_t initial_max_concurrent_streams, 40 size_t initial_max_concurrent_streams,
40 size_t max_concurrent_streams_limit, 41 size_t max_concurrent_streams_limit,
41 SpdySessionPool::TimeFunc time_func, 42 SpdySessionPool::TimeFunc time_func,
42 const std::string& trusted_spdy_proxy) 43 const std::string& trusted_spdy_proxy)
43 : http_server_properties_(http_server_properties), 44 : http_server_properties_(http_server_properties),
45 transport_security_state_(transport_security_state),
44 ssl_config_service_(ssl_config_service), 46 ssl_config_service_(ssl_config_service),
45 resolver_(resolver), 47 resolver_(resolver),
46 verify_domain_authentication_(true), 48 verify_domain_authentication_(true),
47 enable_sending_initial_data_(true), 49 enable_sending_initial_data_(true),
48 force_single_domain_(force_single_domain), 50 force_single_domain_(force_single_domain),
49 enable_compression_(enable_compression), 51 enable_compression_(enable_compression),
50 enable_ping_based_connection_checking_( 52 enable_ping_based_connection_checking_(
51 enable_ping_based_connection_checking), 53 enable_ping_based_connection_checking),
52 // TODO(akalin): Force callers to have a valid value of 54 // TODO(akalin): Force callers to have a valid value of
53 // |default_protocol_|. 55 // |default_protocol_|.
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 bool is_secure) { 93 bool is_secure) {
92 DCHECK_GE(default_protocol_, kProtoSPDYMinimumVersion); 94 DCHECK_GE(default_protocol_, kProtoSPDYMinimumVersion);
93 DCHECK_LE(default_protocol_, kProtoSPDYMaximumVersion); 95 DCHECK_LE(default_protocol_, kProtoSPDYMaximumVersion);
94 96
95 UMA_HISTOGRAM_ENUMERATION( 97 UMA_HISTOGRAM_ENUMERATION(
96 "Net.SpdySessionGet", IMPORTED_FROM_SOCKET, SPDY_SESSION_GET_MAX); 98 "Net.SpdySessionGet", IMPORTED_FROM_SOCKET, SPDY_SESSION_GET_MAX);
97 99
98 scoped_ptr<SpdySession> new_session( 100 scoped_ptr<SpdySession> new_session(
99 new SpdySession(key, 101 new SpdySession(key,
100 http_server_properties_, 102 http_server_properties_,
103 transport_security_state_,
101 verify_domain_authentication_, 104 verify_domain_authentication_,
102 enable_sending_initial_data_, 105 enable_sending_initial_data_,
103 enable_compression_, 106 enable_compression_,
104 enable_ping_based_connection_checking_, 107 enable_ping_based_connection_checking_,
105 default_protocol_, 108 default_protocol_,
106 stream_initial_recv_window_size_, 109 stream_initial_recv_window_size_,
107 initial_max_concurrent_streams_, 110 initial_max_concurrent_streams_,
108 max_concurrent_streams_limit_, 111 max_concurrent_streams_limit_,
109 time_func_, 112 time_func_,
110 trusted_spdy_proxy_, 113 trusted_spdy_proxy_,
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
395 398
396 if (idle_only && (*it)->is_active()) 399 if (idle_only && (*it)->is_active())
397 continue; 400 continue;
398 401
399 (*it)->CloseSessionOnError(error, description); 402 (*it)->CloseSessionOnError(error, description);
400 DCHECK(!IsSessionAvailable(*it)); 403 DCHECK(!IsSessionAvailable(*it));
401 } 404 }
402 } 405 }
403 406
404 } // namespace net 407 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_session_pool.h ('k') | net/spdy/spdy_session_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698