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

Side by Side Diff: net/http/http_network_layer.cc

Issue 3846005: Revert 62918 - net: clean up SSLHostInfo construction.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 10 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « net/http/http_network_layer.h ('k') | net/http/http_network_layer_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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/http/http_network_layer.h" 5 #include "net/http/http_network_layer.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/string_split.h" 8 #include "base/string_split.h"
9 #include "base/string_util.h" 9 #include "base/string_util.h"
10 #include "net/http/http_network_session.h" 10 #include "net/http/http_network_session.h"
11 #include "net/http/http_network_transaction.h" 11 #include "net/http/http_network_transaction.h"
12 #include "net/socket/client_socket_factory.h" 12 #include "net/socket/client_socket_factory.h"
13 #include "net/spdy/spdy_framer.h" 13 #include "net/spdy/spdy_framer.h"
14 #include "net/spdy/spdy_session.h" 14 #include "net/spdy/spdy_session.h"
15 #include "net/spdy/spdy_session_pool.h" 15 #include "net/spdy/spdy_session_pool.h"
16 16
17 namespace net { 17 namespace net {
18 18
19 //----------------------------------------------------------------------------- 19 //-----------------------------------------------------------------------------
20 20
21 // static 21 // static
22 HttpTransactionFactory* HttpNetworkLayer::CreateFactory( 22 HttpTransactionFactory* HttpNetworkLayer::CreateFactory(
23 HostResolver* host_resolver, 23 HostResolver* host_resolver,
24 DnsRRResolver* dnsrr_resolver, 24 DnsRRResolver* dnsrr_resolver,
25 SSLHostInfoFactory* ssl_host_info_factory,
26 ProxyService* proxy_service, 25 ProxyService* proxy_service,
27 SSLConfigService* ssl_config_service, 26 SSLConfigService* ssl_config_service,
28 HttpAuthHandlerFactory* http_auth_handler_factory, 27 HttpAuthHandlerFactory* http_auth_handler_factory,
29 HttpNetworkDelegate* network_delegate, 28 HttpNetworkDelegate* network_delegate,
30 NetLog* net_log) { 29 NetLog* net_log) {
31 DCHECK(proxy_service); 30 DCHECK(proxy_service);
32 31
33 return new HttpNetworkLayer(ClientSocketFactory::GetDefaultFactory(), 32 return new HttpNetworkLayer(ClientSocketFactory::GetDefaultFactory(),
34 host_resolver, dnsrr_resolver, 33 host_resolver, dnsrr_resolver, proxy_service,
35 ssl_host_info_factory, proxy_service,
36 ssl_config_service, http_auth_handler_factory, 34 ssl_config_service, http_auth_handler_factory,
37 network_delegate, 35 network_delegate,
38 net_log); 36 net_log);
39 } 37 }
40 38
41 // static 39 // static
42 HttpTransactionFactory* HttpNetworkLayer::CreateFactory( 40 HttpTransactionFactory* HttpNetworkLayer::CreateFactory(
43 HttpNetworkSession* session) { 41 HttpNetworkSession* session) {
44 DCHECK(session); 42 DCHECK(session);
45 43
46 return new HttpNetworkLayer(session); 44 return new HttpNetworkLayer(session);
47 } 45 }
48 46
49 //----------------------------------------------------------------------------- 47 //-----------------------------------------------------------------------------
50 HttpNetworkLayer::HttpNetworkLayer( 48 HttpNetworkLayer::HttpNetworkLayer(
51 ClientSocketFactory* socket_factory, 49 ClientSocketFactory* socket_factory,
52 HostResolver* host_resolver, 50 HostResolver* host_resolver,
53 DnsRRResolver* dnsrr_resolver, 51 DnsRRResolver* dnsrr_resolver,
54 SSLHostInfoFactory* ssl_host_info_factory,
55 ProxyService* proxy_service, 52 ProxyService* proxy_service,
56 SSLConfigService* ssl_config_service, 53 SSLConfigService* ssl_config_service,
57 HttpAuthHandlerFactory* http_auth_handler_factory, 54 HttpAuthHandlerFactory* http_auth_handler_factory,
58 HttpNetworkDelegate* network_delegate, 55 HttpNetworkDelegate* network_delegate,
59 NetLog* net_log) 56 NetLog* net_log)
60 : socket_factory_(socket_factory), 57 : socket_factory_(socket_factory),
61 host_resolver_(host_resolver), 58 host_resolver_(host_resolver),
62 dnsrr_resolver_(dnsrr_resolver), 59 dnsrr_resolver_(dnsrr_resolver),
63 ssl_host_info_factory_(ssl_host_info_factory),
64 proxy_service_(proxy_service), 60 proxy_service_(proxy_service),
65 ssl_config_service_(ssl_config_service), 61 ssl_config_service_(ssl_config_service),
66 session_(NULL), 62 session_(NULL),
67 spdy_session_pool_(NULL), 63 spdy_session_pool_(NULL),
68 http_auth_handler_factory_(http_auth_handler_factory), 64 http_auth_handler_factory_(http_auth_handler_factory),
69 network_delegate_(network_delegate), 65 network_delegate_(network_delegate),
70 net_log_(net_log), 66 net_log_(net_log),
71 suspended_(false) { 67 suspended_(false) {
72 DCHECK(proxy_service_); 68 DCHECK(proxy_service_);
73 DCHECK(ssl_config_service_.get()); 69 DCHECK(ssl_config_service_.get());
74 } 70 }
75 71
76 HttpNetworkLayer::HttpNetworkLayer( 72 HttpNetworkLayer::HttpNetworkLayer(
77 ClientSocketFactory* socket_factory, 73 ClientSocketFactory* socket_factory,
78 HostResolver* host_resolver, 74 HostResolver* host_resolver,
79 DnsRRResolver* dnsrr_resolver, 75 DnsRRResolver* dnsrr_resolver,
80 SSLHostInfoFactory* ssl_host_info_factory,
81 ProxyService* proxy_service, 76 ProxyService* proxy_service,
82 SSLConfigService* ssl_config_service, 77 SSLConfigService* ssl_config_service,
83 SpdySessionPool* spdy_session_pool, 78 SpdySessionPool* spdy_session_pool,
84 HttpAuthHandlerFactory* http_auth_handler_factory, 79 HttpAuthHandlerFactory* http_auth_handler_factory,
85 HttpNetworkDelegate* network_delegate, 80 HttpNetworkDelegate* network_delegate,
86 NetLog* net_log) 81 NetLog* net_log)
87 : socket_factory_(socket_factory), 82 : socket_factory_(socket_factory),
88 host_resolver_(host_resolver), 83 host_resolver_(host_resolver),
89 dnsrr_resolver_(dnsrr_resolver), 84 dnsrr_resolver_(dnsrr_resolver),
90 ssl_host_info_factory_(ssl_host_info_factory),
91 proxy_service_(proxy_service), 85 proxy_service_(proxy_service),
92 ssl_config_service_(ssl_config_service), 86 ssl_config_service_(ssl_config_service),
93 session_(NULL), 87 session_(NULL),
94 spdy_session_pool_(spdy_session_pool), 88 spdy_session_pool_(spdy_session_pool),
95 http_auth_handler_factory_(http_auth_handler_factory), 89 http_auth_handler_factory_(http_auth_handler_factory),
96 network_delegate_(network_delegate), 90 network_delegate_(network_delegate),
97 net_log_(net_log), 91 net_log_(net_log),
98 suspended_(false) { 92 suspended_(false) {
99 DCHECK(proxy_service_); 93 DCHECK(proxy_service_);
100 DCHECK(ssl_config_service_.get()); 94 DCHECK(ssl_config_service_.get());
101 } 95 }
102 96
103 HttpNetworkLayer::HttpNetworkLayer(HttpNetworkSession* session) 97 HttpNetworkLayer::HttpNetworkLayer(HttpNetworkSession* session)
104 : socket_factory_(ClientSocketFactory::GetDefaultFactory()), 98 : socket_factory_(ClientSocketFactory::GetDefaultFactory()),
105 dnsrr_resolver_(NULL), 99 dnsrr_resolver_(NULL),
106 ssl_host_info_factory_(NULL),
107 ssl_config_service_(NULL), 100 ssl_config_service_(NULL),
108 session_(session), 101 session_(session),
109 spdy_session_pool_(NULL), 102 spdy_session_pool_(NULL),
110 http_auth_handler_factory_(NULL), 103 http_auth_handler_factory_(NULL),
111 network_delegate_(NULL), 104 network_delegate_(NULL),
112 net_log_(NULL), 105 net_log_(NULL),
113 suspended_(false) { 106 suspended_(false) {
114 DCHECK(session_.get()); 107 DCHECK(session_.get());
115 } 108 }
116 109
(...skipping 20 matching lines...) Expand all
137 } 130 }
138 131
139 HttpNetworkSession* HttpNetworkLayer::GetSession() { 132 HttpNetworkSession* HttpNetworkLayer::GetSession() {
140 if (!session_) { 133 if (!session_) {
141 DCHECK(proxy_service_); 134 DCHECK(proxy_service_);
142 if (!spdy_session_pool_.get()) 135 if (!spdy_session_pool_.get())
143 spdy_session_pool_.reset(new SpdySessionPool(ssl_config_service_)); 136 spdy_session_pool_.reset(new SpdySessionPool(ssl_config_service_));
144 session_ = new HttpNetworkSession( 137 session_ = new HttpNetworkSession(
145 host_resolver_, 138 host_resolver_,
146 dnsrr_resolver_, 139 dnsrr_resolver_,
147 ssl_host_info_factory_,
148 proxy_service_, 140 proxy_service_,
149 socket_factory_, 141 socket_factory_,
150 ssl_config_service_, 142 ssl_config_service_,
151 spdy_session_pool_.release(), 143 spdy_session_pool_.release(),
152 http_auth_handler_factory_, 144 http_auth_handler_factory_,
153 network_delegate_, 145 network_delegate_,
154 net_log_); 146 net_log_);
155 // These were just temps for lazy-initializing HttpNetworkSession. 147 // These were just temps for lazy-initializing HttpNetworkSession.
156 host_resolver_ = NULL; 148 host_resolver_ = NULL;
157 dnsrr_resolver_ = NULL; 149 dnsrr_resolver_ = NULL;
158 ssl_host_info_factory_ = NULL;
159 proxy_service_ = NULL; 150 proxy_service_ = NULL;
160 socket_factory_ = NULL; 151 socket_factory_ = NULL;
161 http_auth_handler_factory_ = NULL; 152 http_auth_handler_factory_ = NULL;
162 net_log_ = NULL; 153 net_log_ = NULL;
163 network_delegate_ = NULL; 154 network_delegate_ = NULL;
164 } 155 }
165 return session_; 156 return session_;
166 } 157 }
167 158
168 // static 159 // static
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
244 pair.protocol = HttpAlternateProtocols::NPN_SPDY_2; 235 pair.protocol = HttpAlternateProtocols::NPN_SPDY_2;
245 HttpAlternateProtocols::ForceAlternateProtocol(pair); 236 HttpAlternateProtocols::ForceAlternateProtocol(pair);
246 } else if (option.empty() && it == spdy_options.begin()) { 237 } else if (option.empty() && it == spdy_options.begin()) {
247 continue; 238 continue;
248 } else { 239 } else {
249 LOG(DFATAL) << "Unrecognized spdy option: " << option; 240 LOG(DFATAL) << "Unrecognized spdy option: " << option;
250 } 241 }
251 } 242 }
252 } 243 }
253 } // namespace net 244 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_network_layer.h ('k') | net/http/http_network_layer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698