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_api.h" |
14 #include "net/base/ssl_client_auth_cache.h" | 15 #include "net/base/ssl_client_auth_cache.h" |
15 #include "net/http/http_alternate_protocols.h" | 16 #include "net/http/http_alternate_protocols.h" |
16 #include "net/http/http_auth_cache.h" | 17 #include "net/http/http_auth_cache.h" |
17 #include "net/http/http_stream_factory.h" | 18 #include "net/http/http_stream_factory.h" |
18 #include "net/socket/client_socket_pool_manager.h" | 19 #include "net/socket/client_socket_pool_manager.h" |
19 #include "net/spdy/spdy_session_pool.h" | 20 #include "net/spdy/spdy_session_pool.h" |
20 #include "net/spdy/spdy_settings_storage.h" | 21 #include "net/spdy/spdy_settings_storage.h" |
21 | 22 |
22 class Value; | 23 class Value; |
23 | 24 |
24 namespace net { | 25 namespace net { |
25 | 26 |
26 class CertVerifier; | 27 class CertVerifier; |
27 class ClientSocketFactory; | 28 class ClientSocketFactory; |
28 class DnsCertProvenanceChecker; | 29 class DnsCertProvenanceChecker; |
29 class DnsRRResolver; | 30 class DnsRRResolver; |
30 class HostResolver; | 31 class HostResolver; |
31 class HttpAuthHandlerFactory; | 32 class HttpAuthHandlerFactory; |
32 class HttpNetworkSessionPeer; | 33 class HttpNetworkSessionPeer; |
33 class HttpProxyClientSocketPool; | 34 class HttpProxyClientSocketPool; |
34 class HttpResponseBodyDrainer; | 35 class HttpResponseBodyDrainer; |
35 class NetLog; | 36 class NetLog; |
36 class NetworkDelegate; | 37 class NetworkDelegate; |
37 class ProxyService; | 38 class ProxyService; |
38 class SSLConfigService; | 39 class SSLConfigService; |
39 class SSLHostInfoFactory; | 40 class SSLHostInfoFactory; |
40 | 41 |
41 // This class holds session objects used by HttpNetworkTransaction objects. | 42 // This class holds session objects used by HttpNetworkTransaction objects. |
42 class HttpNetworkSession : public base::RefCounted<HttpNetworkSession>, | 43 class NET_API HttpNetworkSession |
43 public base::NonThreadSafe { | 44 : public base::RefCounted<HttpNetworkSession>, |
| 45 NON_EXPORTED_BASE(public base::NonThreadSafe) { |
44 public: | 46 public: |
45 struct Params { | 47 struct NET_API Params { |
46 Params() | 48 Params() |
47 : client_socket_factory(NULL), | 49 : client_socket_factory(NULL), |
48 host_resolver(NULL), | 50 host_resolver(NULL), |
49 cert_verifier(NULL), | 51 cert_verifier(NULL), |
50 dnsrr_resolver(NULL), | 52 dnsrr_resolver(NULL), |
51 dns_cert_checker(NULL), | 53 dns_cert_checker(NULL), |
52 proxy_service(NULL), | 54 proxy_service(NULL), |
53 ssl_host_info_factory(NULL), | 55 ssl_host_info_factory(NULL), |
54 ssl_config_service(NULL), | 56 ssl_config_service(NULL), |
55 http_auth_handler_factory(NULL), | 57 http_auth_handler_factory(NULL), |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
169 HttpAlternateProtocols alternate_protocols_; | 171 HttpAlternateProtocols alternate_protocols_; |
170 ClientSocketPoolManager socket_pool_manager_; | 172 ClientSocketPoolManager socket_pool_manager_; |
171 SpdySessionPool spdy_session_pool_; | 173 SpdySessionPool spdy_session_pool_; |
172 scoped_ptr<HttpStreamFactory> http_stream_factory_; | 174 scoped_ptr<HttpStreamFactory> http_stream_factory_; |
173 std::set<HttpResponseBodyDrainer*> response_drainers_; | 175 std::set<HttpResponseBodyDrainer*> response_drainers_; |
174 }; | 176 }; |
175 | 177 |
176 } // namespace net | 178 } // namespace net |
177 | 179 |
178 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ | 180 #endif // NET_HTTP_HTTP_NETWORK_SESSION_H_ |
OLD | NEW |