OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // 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 | 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_STREAM_REQUEST_H_ | 5 #ifndef NET_HTTP_HTTP_STREAM_REQUEST_H_ |
6 #define NET_HTTP_HTTP_STREAM_REQUEST_H_ | 6 #define NET_HTTP_HTTP_STREAM_REQUEST_H_ |
7 | 7 |
8 #include "base/scoped_ptr.h" | 8 #include "base/scoped_ptr.h" |
9 #include "net/base/completion_callback.h" | 9 #include "net/base/completion_callback.h" |
10 #include "net/base/host_mapping_rules.h" | 10 #include "net/base/host_mapping_rules.h" |
11 #include "net/base/ssl_config_service.h" | 11 #include "net/base/ssl_config_service.h" |
12 #include "net/http/http_auth.h" | 12 #include "net/http/http_auth.h" |
13 #include "net/http/http_auth_controller.h" | 13 #include "net/http/http_auth_controller.h" |
14 #include "net/http/http_alternate_protocols.h" | 14 #include "net/http/http_alternate_protocols.h" |
15 #include "net/http/http_stream_factory.h" | 15 #include "net/http/http_stream_factory.h" |
16 #include "net/http/stream_factory.h" | 16 #include "net/http/stream_factory.h" |
17 #include "net/proxy/proxy_service.h" | 17 #include "net/proxy/proxy_service.h" |
18 #include "net/socket/client_socket_handle.h" | 18 #include "net/socket/client_socket_handle.h" |
19 | 19 |
20 namespace net { | 20 namespace net { |
21 | 21 |
22 class ClientSocketHandle; | 22 class ClientSocketHandle; |
23 class HttpAuthController; | 23 class HttpAuthController; |
24 class HttpNetworkSession; | 24 class HttpNetworkSession; |
| 25 class HttpProxySocketParams; |
25 class HttpStreamFactory; | 26 class HttpStreamFactory; |
| 27 class SOCKSSocketParams; |
| 28 class SSLSocketParams; |
26 class StreamRequestDelegate; | 29 class StreamRequestDelegate; |
| 30 class TCPSocketParams; |
27 struct HttpRequestInfo; | 31 struct HttpRequestInfo; |
28 | 32 |
29 // An HttpStreamRequest exists for each stream which is in progress of being | 33 // An HttpStreamRequest exists for each stream which is in progress of being |
30 // created for the StreamFactory. | 34 // created for the StreamFactory. |
31 class HttpStreamRequest : public StreamFactory::StreamRequestJob { | 35 class HttpStreamRequest : public StreamFactory::StreamRequestJob { |
32 public: | 36 public: |
33 HttpStreamRequest(HttpStreamFactory* factory, | 37 HttpStreamRequest(HttpStreamFactory* factory, |
34 const scoped_refptr<HttpNetworkSession>& session); | 38 const scoped_refptr<HttpNetworkSession>& session); |
35 virtual ~HttpStreamRequest(); | 39 virtual ~HttpStreamRequest(); |
36 | 40 |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 int DoResolveProxy(); | 104 int DoResolveProxy(); |
101 int DoResolveProxyComplete(int result); | 105 int DoResolveProxyComplete(int result); |
102 int DoInitConnection(); | 106 int DoInitConnection(); |
103 int DoInitConnectionComplete(int result); | 107 int DoInitConnectionComplete(int result); |
104 int DoWaitingUserAction(int result); | 108 int DoWaitingUserAction(int result); |
105 int DoCreateStream(); | 109 int DoCreateStream(); |
106 int DoCreateStreamComplete(int result); | 110 int DoCreateStreamComplete(int result); |
107 int DoRestartTunnelAuth(); | 111 int DoRestartTunnelAuth(); |
108 int DoRestartTunnelAuthComplete(int result); | 112 int DoRestartTunnelAuthComplete(int result); |
109 | 113 |
| 114 // Returns a newly create SSLSocketParams, and sets several |
| 115 // fields of ssl_config_. |
| 116 scoped_refptr<SSLSocketParams> GenerateSslParams( |
| 117 scoped_refptr<TCPSocketParams> tcp_params, |
| 118 scoped_refptr<HttpProxySocketParams> http_proxy_params, |
| 119 scoped_refptr<SOCKSSocketParams> socks_params, |
| 120 ProxyServer::Scheme proxy_scheme, |
| 121 bool want_spdy_over_npn); |
| 122 |
110 // AlternateProtocol API | 123 // AlternateProtocol API |
111 void MarkBrokenAlternateProtocolAndFallback(); | 124 void MarkBrokenAlternateProtocolAndFallback(); |
112 | 125 |
113 // Retrieve SSLInfo from our SSL Socket. | 126 // Retrieve SSLInfo from our SSL Socket. |
114 // This must only be called when we are using an SSLSocket. | 127 // This must only be called when we are using an SSLSocket. |
115 // After calling, the caller can use ssl_info_. | 128 // After calling, the caller can use ssl_info_. |
116 void GetSSLInfo(); | 129 void GetSSLInfo(); |
117 | 130 |
118 // Called when we encounter a network error that could be resolved by trying | 131 // Called when we encounter a network error that could be resolved by trying |
119 // a new proxy configuration. If there is another proxy configuration to try | 132 // a new proxy configuration. If there is another proxy configuration to try |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
196 // this has been cancelled, input parameters passed into the StreamRequest | 209 // this has been cancelled, input parameters passed into the StreamRequest |
197 // can no longer be touched (as they belong to the requestor). | 210 // can no longer be touched (as they belong to the requestor). |
198 bool cancelled_; | 211 bool cancelled_; |
199 | 212 |
200 DISALLOW_COPY_AND_ASSIGN(HttpStreamRequest); | 213 DISALLOW_COPY_AND_ASSIGN(HttpStreamRequest); |
201 }; | 214 }; |
202 | 215 |
203 } // namespace net | 216 } // namespace net |
204 | 217 |
205 #endif // NET_HTTP_HTTP_STREAM_REQUEST_H_ | 218 #endif // NET_HTTP_HTTP_STREAM_REQUEST_H_ |
206 | |
OLD | NEW |