blob: 06101caaa7b39018c8f8dcae3795e7f5a48852c5 [file] [log] [blame]
[email protected]87bfa3f2010-09-30 14:54:561// Copyright (c) 2010 The Chromium Authors. All rights reserved.
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_
7#pragma once
8
[email protected]5322a7f2011-02-11 20:44:429#include "base/ref_counted.h"
[email protected]87bfa3f2010-09-30 14:54:5610
11namespace net {
12
[email protected]5322a7f2011-02-11 20:44:4213class HostPortPair;
14class HttpNetworkSession;
15class HttpProxyClientSocketPool;
[email protected]102e27c2011-02-23 01:01:3116class HttpStreamFactory;
[email protected]5322a7f2011-02-11 20:44:4217class ProxyService;
18class SOCKSClientSocketPool;
19class SSLClientSocketPool;
20class TCPClientSocketPool;
21
[email protected]87bfa3f2010-09-30 14:54:5622class HttpNetworkSessionPeer {
23 public:
24 explicit HttpNetworkSessionPeer(
[email protected]5322a7f2011-02-11 20:44:4225 const scoped_refptr<HttpNetworkSession>& session);
26 ~HttpNetworkSessionPeer();
[email protected]87bfa3f2010-09-30 14:54:5627
[email protected]5322a7f2011-02-11 20:44:4228 void SetTCPSocketPool(TCPClientSocketPool* pool);
[email protected]87bfa3f2010-09-30 14:54:5629
30 void SetSocketPoolForSOCKSProxy(
31 const HostPortPair& socks_proxy,
[email protected]5322a7f2011-02-11 20:44:4232 SOCKSClientSocketPool* pool);
[email protected]87bfa3f2010-09-30 14:54:5633
34 void SetSocketPoolForHTTPProxy(
35 const HostPortPair& http_proxy,
[email protected]5322a7f2011-02-11 20:44:4236 HttpProxyClientSocketPool* pool);
[email protected]87bfa3f2010-09-30 14:54:5637
[email protected]5322a7f2011-02-11 20:44:4238 void SetSSLSocketPool(SSLClientSocketPool* pool);
[email protected]87bfa3f2010-09-30 14:54:5639
40 void SetSocketPoolForSSLWithProxy(
41 const HostPortPair& proxy_host,
[email protected]5322a7f2011-02-11 20:44:4242 SSLClientSocketPool* pool);
[email protected]87bfa3f2010-09-30 14:54:5643
[email protected]5322a7f2011-02-11 20:44:4244 void SetProxyService(ProxyService* proxy_service);
[email protected]87bfa3f2010-09-30 14:54:5645
[email protected]102e27c2011-02-23 01:01:3146 void SetHttpStreamFactory(HttpStreamFactory* http_stream_factory);
47
[email protected]87bfa3f2010-09-30 14:54:5648 private:
49 const scoped_refptr<HttpNetworkSession> session_;
50
51 DISALLOW_COPY_AND_ASSIGN(HttpNetworkSessionPeer);
52};
53
54} // namespace net
55
56#endif // NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_