OLD | NEW |
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 #ifndef NET_HTTP_HTTP_NETWORK_SESSION_H_ | 5 #ifndef NET_HTTP_HTTP_NETWORK_SESSION_H_ |
6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_ | 6 #define NET_HTTP_HTTP_NETWORK_SESSION_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 TransportSecurityState* transport_security_state; | 66 TransportSecurityState* transport_security_state; |
67 CTVerifier* cert_transparency_verifier; | 67 CTVerifier* cert_transparency_verifier; |
68 ProxyService* proxy_service; | 68 ProxyService* proxy_service; |
69 std::string ssl_session_cache_shard; | 69 std::string ssl_session_cache_shard; |
70 SSLConfigService* ssl_config_service; | 70 SSLConfigService* ssl_config_service; |
71 HttpAuthHandlerFactory* http_auth_handler_factory; | 71 HttpAuthHandlerFactory* http_auth_handler_factory; |
72 NetworkDelegate* network_delegate; | 72 NetworkDelegate* network_delegate; |
73 base::WeakPtr<HttpServerProperties> http_server_properties; | 73 base::WeakPtr<HttpServerProperties> http_server_properties; |
74 NetLog* net_log; | 74 NetLog* net_log; |
75 HostMappingRules* host_mapping_rules; | 75 HostMappingRules* host_mapping_rules; |
76 bool force_http_pipelining; | |
77 bool ignore_certificate_errors; | 76 bool ignore_certificate_errors; |
78 bool http_pipelining_enabled; | |
79 uint16 testing_fixed_http_port; | 77 uint16 testing_fixed_http_port; |
80 uint16 testing_fixed_https_port; | 78 uint16 testing_fixed_https_port; |
81 bool force_spdy_single_domain; | 79 bool force_spdy_single_domain; |
82 bool enable_spdy_compression; | 80 bool enable_spdy_compression; |
83 bool enable_spdy_ping_based_connection_checking; | 81 bool enable_spdy_ping_based_connection_checking; |
84 NextProto spdy_default_protocol; | 82 NextProto spdy_default_protocol; |
85 size_t spdy_stream_initial_recv_window_size; | 83 size_t spdy_stream_initial_recv_window_size; |
86 size_t spdy_initial_max_concurrent_streams; | 84 size_t spdy_initial_max_concurrent_streams; |
87 size_t spdy_max_concurrent_streams_limit; | 85 size_t spdy_max_concurrent_streams_limit; |
88 SpdySessionPool::TimeFunc time_func; | 86 SpdySessionPool::TimeFunc time_func; |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
166 // responsible for deleting the returned value. | 164 // responsible for deleting the returned value. |
167 base::Value* SpdySessionPoolInfoToValue() const; | 165 base::Value* SpdySessionPoolInfoToValue() const; |
168 | 166 |
169 // Creates a Value summary of the state of the QUIC sessions and | 167 // Creates a Value summary of the state of the QUIC sessions and |
170 // configuration. The caller is responsible for deleting the returned value. | 168 // configuration. The caller is responsible for deleting the returned value. |
171 base::Value* QuicInfoToValue() const; | 169 base::Value* QuicInfoToValue() const; |
172 | 170 |
173 void CloseAllConnections(); | 171 void CloseAllConnections(); |
174 void CloseIdleConnections(); | 172 void CloseIdleConnections(); |
175 | 173 |
176 bool force_http_pipelining() const { return force_http_pipelining_; } | |
177 | |
178 // Returns the original Params used to construct this session. | 174 // Returns the original Params used to construct this session. |
179 const Params& params() const { return params_; } | 175 const Params& params() const { return params_; } |
180 | 176 |
181 void set_http_pipelining_enabled(bool enable) { | |
182 params_.http_pipelining_enabled = enable; | |
183 } | |
184 | |
185 private: | 177 private: |
186 friend class base::RefCounted<HttpNetworkSession>; | 178 friend class base::RefCounted<HttpNetworkSession>; |
187 friend class HttpNetworkSessionPeer; | 179 friend class HttpNetworkSessionPeer; |
188 | 180 |
189 ~HttpNetworkSession(); | 181 ~HttpNetworkSession(); |
190 | 182 |
191 ClientSocketPoolManager* GetSocketPoolManager(SocketPoolType pool_type); | 183 ClientSocketPoolManager* GetSocketPoolManager(SocketPoolType pool_type); |
192 | 184 |
193 NetLog* const net_log_; | 185 NetLog* const net_log_; |
194 NetworkDelegate* const network_delegate_; | 186 NetworkDelegate* const network_delegate_; |
195 const base::WeakPtr<HttpServerProperties> http_server_properties_; | 187 const base::WeakPtr<HttpServerProperties> http_server_properties_; |
196 CertVerifier* const cert_verifier_; | 188 CertVerifier* const cert_verifier_; |
197 HttpAuthHandlerFactory* const http_auth_handler_factory_; | 189 HttpAuthHandlerFactory* const http_auth_handler_factory_; |
198 bool force_http_pipelining_; | |
199 | 190 |
200 // Not const since it's modified by HttpNetworkSessionPeer for testing. | 191 // Not const since it's modified by HttpNetworkSessionPeer for testing. |
201 ProxyService* proxy_service_; | 192 ProxyService* proxy_service_; |
202 const scoped_refptr<SSLConfigService> ssl_config_service_; | 193 const scoped_refptr<SSLConfigService> ssl_config_service_; |
203 | 194 |
204 HttpAuthCache http_auth_cache_; | 195 HttpAuthCache http_auth_cache_; |
205 SSLClientAuthCache ssl_client_auth_cache_; | 196 SSLClientAuthCache ssl_client_auth_cache_; |
206 scoped_ptr<ClientSocketPoolManager> normal_socket_pool_manager_; | 197 scoped_ptr<ClientSocketPoolManager> normal_socket_pool_manager_; |
207 scoped_ptr<ClientSocketPoolManager> websocket_socket_pool_manager_; | 198 scoped_ptr<ClientSocketPoolManager> websocket_socket_pool_manager_; |
208 QuicStreamFactory quic_stream_factory_; | 199 QuicStreamFactory quic_stream_factory_; |
209 SpdySessionPool spdy_session_pool_; | 200 SpdySessionPool spdy_session_pool_; |
210 scoped_ptr<HttpStreamFactory> http_stream_factory_; | 201 scoped_ptr<HttpStreamFactory> http_stream_factory_; |
211 scoped_ptr<HttpStreamFactory> http_stream_factory_for_websocket_; | 202 scoped_ptr<HttpStreamFactory> http_stream_factory_for_websocket_; |
212 std::set<HttpResponseBodyDrainer*> response_drainers_; | 203 std::set<HttpResponseBodyDrainer*> response_drainers_; |
213 | 204 |
214 // TODO(jgraettinger): Remove when Huffman collection is complete. | 205 // TODO(jgraettinger): Remove when Huffman collection is complete. |
215 scoped_ptr<HpackHuffmanAggregator> huffman_aggregator_; | 206 scoped_ptr<HpackHuffmanAggregator> huffman_aggregator_; |
216 | 207 |
217 Params params_; | 208 Params params_; |
218 }; | 209 }; |
219 | 210 |
220 } // namespace net | 211 } // namespace net |
221 | 212 |
222 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ | 213 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ |
OLD | NEW |