OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
11 #include "base/threading/non_thread_safe.h" | 11 #include "base/threading/non_thread_safe.h" |
12 #include "net/base/host_port_pair.h" | 12 #include "net/base/host_port_pair.h" |
13 #include "net/base/host_resolver.h" | 13 #include "net/base/host_resolver.h" |
14 #include "net/base/net_export.h" | 14 #include "net/base/net_export.h" |
15 #include "net/base/ssl_client_auth_cache.h" | 15 #include "net/base/ssl_client_auth_cache.h" |
16 #include "net/http/http_auth_cache.h" | 16 #include "net/http/http_auth_cache.h" |
17 #include "net/http/http_stream_factory.h" | 17 #include "net/http/http_stream_factory.h" |
18 #include "net/socket/client_socket_pool_manager.h" | 18 #include "net/socket/client_socket_pool_manager.h" |
19 #include "net/spdy/spdy_session_pool.h" | 19 #include "net/spdy/spdy_session_pool.h" |
20 #include "net/spdy/spdy_settings_storage.h" | 20 #include "net/spdy/spdy_settings_storage.h" |
21 | 21 |
22 namespace base { | 22 namespace base { |
23 class Value; | 23 class Value; |
24 } | 24 } |
25 | 25 |
26 namespace net { | 26 namespace net { |
27 | 27 |
28 class CertVerifier; | 28 class CertVerifier; |
29 class ClientSocketFactory; | 29 class ClientSocketFactory; |
30 class DnsCertProvenanceChecker; | |
31 class HostResolver; | 30 class HostResolver; |
32 class HttpAuthHandlerFactory; | 31 class HttpAuthHandlerFactory; |
33 class HttpNetworkSessionPeer; | 32 class HttpNetworkSessionPeer; |
34 class HttpProxyClientSocketPool; | 33 class HttpProxyClientSocketPool; |
35 class HttpResponseBodyDrainer; | 34 class HttpResponseBodyDrainer; |
36 class HttpServerProperties; | 35 class HttpServerProperties; |
37 class NetLog; | 36 class NetLog; |
38 class NetworkDelegate; | 37 class NetworkDelegate; |
39 class OriginBoundCertService; | 38 class OriginBoundCertService; |
40 class ProxyService; | 39 class ProxyService; |
41 class SOCKSClientSocketPool; | 40 class SOCKSClientSocketPool; |
42 class SSLClientSocketPool; | 41 class SSLClientSocketPool; |
43 class SSLConfigService; | 42 class SSLConfigService; |
44 class SSLHostInfoFactory; | 43 class SSLHostInfoFactory; |
45 class TransportClientSocketPool; | 44 class TransportClientSocketPool; |
46 class TransportSecurityState; | 45 class TransportSecurityState; |
47 | 46 |
48 // This class holds session objects used by HttpNetworkTransaction objects. | 47 // This class holds session objects used by HttpNetworkTransaction objects. |
49 class NET_EXPORT HttpNetworkSession | 48 class NET_EXPORT HttpNetworkSession |
50 : public base::RefCounted<HttpNetworkSession>, | 49 : public base::RefCounted<HttpNetworkSession>, |
51 NON_EXPORTED_BASE(public base::NonThreadSafe) { | 50 NON_EXPORTED_BASE(public base::NonThreadSafe) { |
52 public: | 51 public: |
53 struct NET_EXPORT Params { | 52 struct NET_EXPORT Params { |
54 Params() | 53 Params() |
55 : client_socket_factory(NULL), | 54 : client_socket_factory(NULL), |
56 host_resolver(NULL), | 55 host_resolver(NULL), |
57 cert_verifier(NULL), | 56 cert_verifier(NULL), |
58 origin_bound_cert_service(NULL), | 57 origin_bound_cert_service(NULL), |
59 transport_security_state(NULL), | 58 transport_security_state(NULL), |
60 dns_cert_checker(NULL), | |
61 proxy_service(NULL), | 59 proxy_service(NULL), |
62 ssl_host_info_factory(NULL), | 60 ssl_host_info_factory(NULL), |
63 ssl_config_service(NULL), | 61 ssl_config_service(NULL), |
64 http_auth_handler_factory(NULL), | 62 http_auth_handler_factory(NULL), |
65 network_delegate(NULL), | 63 network_delegate(NULL), |
66 http_server_properties(NULL), | 64 http_server_properties(NULL), |
67 net_log(NULL) {} | 65 net_log(NULL) {} |
68 | 66 |
69 ClientSocketFactory* client_socket_factory; | 67 ClientSocketFactory* client_socket_factory; |
70 HostResolver* host_resolver; | 68 HostResolver* host_resolver; |
71 CertVerifier* cert_verifier; | 69 CertVerifier* cert_verifier; |
72 OriginBoundCertService* origin_bound_cert_service; | 70 OriginBoundCertService* origin_bound_cert_service; |
73 TransportSecurityState* transport_security_state; | 71 TransportSecurityState* transport_security_state; |
74 DnsCertProvenanceChecker* dns_cert_checker; | |
75 ProxyService* proxy_service; | 72 ProxyService* proxy_service; |
76 SSLHostInfoFactory* ssl_host_info_factory; | 73 SSLHostInfoFactory* ssl_host_info_factory; |
77 std::string ssl_session_cache_shard; | 74 std::string ssl_session_cache_shard; |
78 SSLConfigService* ssl_config_service; | 75 SSLConfigService* ssl_config_service; |
79 HttpAuthHandlerFactory* http_auth_handler_factory; | 76 HttpAuthHandlerFactory* http_auth_handler_factory; |
80 NetworkDelegate* network_delegate; | 77 NetworkDelegate* network_delegate; |
81 HttpServerProperties* http_server_properties; | 78 HttpServerProperties* http_server_properties; |
82 NetLog* net_log; | 79 NetLog* net_log; |
83 }; | 80 }; |
84 | 81 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
161 SSLClientAuthCache ssl_client_auth_cache_; | 158 SSLClientAuthCache ssl_client_auth_cache_; |
162 scoped_ptr<ClientSocketPoolManager> socket_pool_manager_; | 159 scoped_ptr<ClientSocketPoolManager> socket_pool_manager_; |
163 SpdySessionPool spdy_session_pool_; | 160 SpdySessionPool spdy_session_pool_; |
164 scoped_ptr<HttpStreamFactory> http_stream_factory_; | 161 scoped_ptr<HttpStreamFactory> http_stream_factory_; |
165 std::set<HttpResponseBodyDrainer*> response_drainers_; | 162 std::set<HttpResponseBodyDrainer*> response_drainers_; |
166 }; | 163 }; |
167 | 164 |
168 } // namespace net | 165 } // namespace net |
169 | 166 |
170 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ | 167 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ |
OLD | NEW |