[email protected] | a4605c5 | 2012-03-03 01:12:10 | [diff] [blame] | 1 | // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 2 | // Use of this source code is governed by a BSD-style license that can be |
3 | // found in the LICENSE file. | ||||
4 | |||||
5 | #ifndef NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ | ||||
6 | #define NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ | ||||
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 7 | |
[email protected] | 3b63f8f4 | 2011-03-28 01:54:15 | [diff] [blame] | 8 | #include "base/memory/ref_counted.h" |
[email protected] | 831e4a3 | 2013-11-14 02:14:44 | [diff] [blame] | 9 | #include "base/memory/scoped_ptr.h" |
[email protected] | 172da1b | 2011-08-12 15:52:26 | [diff] [blame] | 10 | #include "net/base/net_export.h" |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 11 | |
12 | namespace net { | ||||
13 | |||||
[email protected] | a42dbd14 | 2011-11-17 16:42:02 | [diff] [blame] | 14 | class ClientSocketPoolManager; |
[email protected] | 5322a7f | 2011-02-11 20:44:42 | [diff] [blame] | 15 | class HttpNetworkSession; |
[email protected] | 102e27c | 2011-02-23 01:01:31 | [diff] [blame] | 16 | class HttpStreamFactory; |
[email protected] | 5322a7f | 2011-02-11 20:44:42 | [diff] [blame] | 17 | class ProxyService; |
[email protected] | 5322a7f | 2011-02-11 20:44:42 | [diff] [blame] | 18 | |
[email protected] | 172da1b | 2011-08-12 15:52:26 | [diff] [blame] | 19 | class NET_EXPORT_PRIVATE HttpNetworkSessionPeer { |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 20 | public: |
mmenke | e65e7af | 2015-10-13 17:16:42 | [diff] [blame^] | 21 | // |session| should outlive the HttpNetworkSessionPeer. |
22 | explicit HttpNetworkSessionPeer(HttpNetworkSession* session); | ||||
[email protected] | 5322a7f | 2011-02-11 20:44:42 | [diff] [blame] | 23 | ~HttpNetworkSessionPeer(); |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 24 | |
[email protected] | a42dbd14 | 2011-11-17 16:42:02 | [diff] [blame] | 25 | void SetClientSocketPoolManager( |
[email protected] | 831e4a3 | 2013-11-14 02:14:44 | [diff] [blame] | 26 | scoped_ptr<ClientSocketPoolManager> socket_pool_manager); |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 27 | |
[email protected] | 5322a7f | 2011-02-11 20:44:42 | [diff] [blame] | 28 | void SetProxyService(ProxyService* proxy_service); |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 29 | |
[email protected] | 831e4a3 | 2013-11-14 02:14:44 | [diff] [blame] | 30 | void SetHttpStreamFactory(scoped_ptr<HttpStreamFactory> http_stream_factory); |
[email protected] | 0191b51c | 2013-11-18 10:55:23 | [diff] [blame] | 31 | void SetHttpStreamFactoryForWebSocket( |
32 | scoped_ptr<HttpStreamFactory> http_stream_factory_for_websocket); | ||||
[email protected] | 102e27c | 2011-02-23 01:01:31 | [diff] [blame] | 33 | |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 34 | private: |
mmenke | e65e7af | 2015-10-13 17:16:42 | [diff] [blame^] | 35 | HttpNetworkSession* const session_; |
[email protected] | 87bfa3f | 2010-09-30 14:54:56 | [diff] [blame] | 36 | |
37 | DISALLOW_COPY_AND_ASSIGN(HttpNetworkSessionPeer); | ||||
38 | }; | ||||
39 | |||||
40 | } // namespace net | ||||
41 | |||||
42 | #endif // NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ |