| // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ |
| #define NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ |
| #pragma once |
| |
| #include "base/memory/ref_counted.h" |
| |
| namespace net { |
| |
| class HostPortPair; |
| class HttpNetworkSession; |
| class HttpProxyClientSocketPool; |
| class HttpStreamFactory; |
| class ProxyService; |
| class SOCKSClientSocketPool; |
| class SSLClientSocketPool; |
| class TransportClientSocketPool; |
| |
| class HttpNetworkSessionPeer { |
| public: |
| explicit HttpNetworkSessionPeer( |
| const scoped_refptr<HttpNetworkSession>& session); |
| ~HttpNetworkSessionPeer(); |
| |
| void SetTransportSocketPool(TransportClientSocketPool* pool); |
| |
| void SetSocketPoolForSOCKSProxy( |
| const HostPortPair& socks_proxy, |
| SOCKSClientSocketPool* pool); |
| |
| void SetSocketPoolForHTTPProxy( |
| const HostPortPair& http_proxy, |
| HttpProxyClientSocketPool* pool); |
| |
| void SetSSLSocketPool(SSLClientSocketPool* pool); |
| |
| void SetSocketPoolForSSLWithProxy( |
| const HostPortPair& proxy_host, |
| SSLClientSocketPool* pool); |
| |
| void SetProxyService(ProxyService* proxy_service); |
| |
| void SetHttpStreamFactory(HttpStreamFactory* http_stream_factory); |
| |
| private: |
| const scoped_refptr<HttpNetworkSession> session_; |
| |
| DISALLOW_COPY_AND_ASSIGN(HttpNetworkSessionPeer); |
| }; |
| |
| } // namespace net |
| |
| #endif // NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_ |