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_PROXY_CLIENT_SOCKET_H_ | 5 #ifndef NET_HTTP_HTTP_PROXY_CLIENT_SOCKET_H_ |
6 #define NET_HTTP_HTTP_PROXY_CLIENT_SOCKET_H_ | 6 #define NET_HTTP_HTTP_PROXY_CLIENT_SOCKET_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
11 #include "base/basictypes.h" | 11 #include "base/basictypes.h" |
12 #include "base/memory/ref_counted.h" | 12 #include "base/memory/ref_counted.h" |
13 #include "net/base/completion_callback.h" | 13 #include "net/base/completion_callback.h" |
14 #include "net/base/host_port_pair.h" | 14 #include "net/base/host_port_pair.h" |
15 #include "net/base/net_log.h" | 15 #include "net/base/net_log.h" |
16 #include "net/http/http_auth_controller.h" | 16 #include "net/http/http_auth_controller.h" |
17 #include "net/http/http_request_headers.h" | 17 #include "net/http/http_request_headers.h" |
18 #include "net/http/http_request_info.h" | 18 #include "net/http/http_request_info.h" |
19 #include "net/http/http_response_info.h" | 19 #include "net/http/http_response_info.h" |
20 #include "net/http/proxy_client_socket.h" | 20 #include "net/http/proxy_client_socket.h" |
21 | 21 |
22 class GURL; | 22 class GURL; |
23 | 23 |
24 namespace net { | 24 namespace net { |
25 | 25 |
26 class AddressList; | 26 class AddressList; |
27 class ClientSocketHandle; | 27 class ClientSocketHandle; |
28 class GrowableIOBuffer; | 28 class GrowableIOBuffer; |
29 class HttpAuthCache; | 29 class HttpAuthCache; |
30 class HttpAuthHandleFactory; | |
31 class HttpStream; | 30 class HttpStream; |
32 class HttpStreamParser; | 31 class HttpStreamParser; |
33 class IOBuffer; | 32 class IOBuffer; |
34 | 33 |
35 class HttpProxyClientSocket : public ProxyClientSocket { | 34 class HttpProxyClientSocket : public ProxyClientSocket { |
36 public: | 35 public: |
37 // Takes ownership of |transport_socket|, which should already be connected | 36 // Takes ownership of |transport_socket|, which should already be connected |
38 // by the time Connect() is called. If tunnel is true then on Connect() | 37 // by the time Connect() is called. If tunnel is true then on Connect() |
39 // this socket will establish an Http tunnel. | 38 // this socket will establish an Http tunnel. |
40 HttpProxyClientSocket(ClientSocketHandle* transport_socket, | 39 HttpProxyClientSocket(ClientSocketHandle* transport_socket, |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
76 virtual const BoundNetLog& NetLog() const; | 75 virtual const BoundNetLog& NetLog() const; |
77 virtual void SetSubresourceSpeculation(); | 76 virtual void SetSubresourceSpeculation(); |
78 virtual void SetOmniboxSpeculation(); | 77 virtual void SetOmniboxSpeculation(); |
79 virtual bool WasEverUsed() const; | 78 virtual bool WasEverUsed() const; |
80 virtual bool UsingTCPFastOpen() const; | 79 virtual bool UsingTCPFastOpen() const; |
81 virtual int64 NumBytesRead() const; | 80 virtual int64 NumBytesRead() const; |
82 virtual base::TimeDelta GetConnectTimeMicros() const; | 81 virtual base::TimeDelta GetConnectTimeMicros() const; |
83 | 82 |
84 // Socket methods: | 83 // Socket methods: |
85 virtual int Read(IOBuffer* buf, int buf_len, OldCompletionCallback* callback); | 84 virtual int Read(IOBuffer* buf, int buf_len, OldCompletionCallback* callback); |
86 virtual int Write(IOBuffer* buf, int buf_len, OldCompletionCallback* callback)
; | 85 virtual int Write(IOBuffer* buf, |
| 86 int buf_len, |
| 87 OldCompletionCallback* callback); |
87 virtual bool SetReceiveBufferSize(int32 size); | 88 virtual bool SetReceiveBufferSize(int32 size); |
88 virtual bool SetSendBufferSize(int32 size); | 89 virtual bool SetSendBufferSize(int32 size); |
89 virtual int GetPeerAddress(AddressList* address) const; | 90 virtual int GetPeerAddress(AddressList* address) const; |
90 virtual int GetLocalAddress(IPEndPoint* address) const; | 91 virtual int GetLocalAddress(IPEndPoint* address) const; |
91 | 92 |
92 private: | 93 private: |
93 enum State { | 94 enum State { |
94 STATE_NONE, | 95 STATE_NONE, |
95 STATE_GENERATE_AUTH_TOKEN, | 96 STATE_GENERATE_AUTH_TOKEN, |
96 STATE_GENERATE_AUTH_TOKEN_COMPLETE, | 97 STATE_GENERATE_AUTH_TOKEN_COMPLETE, |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
162 HttpRequestHeaders request_headers_; | 163 HttpRequestHeaders request_headers_; |
163 | 164 |
164 const BoundNetLog net_log_; | 165 const BoundNetLog net_log_; |
165 | 166 |
166 DISALLOW_COPY_AND_ASSIGN(HttpProxyClientSocket); | 167 DISALLOW_COPY_AND_ASSIGN(HttpProxyClientSocket); |
167 }; | 168 }; |
168 | 169 |
169 } // namespace net | 170 } // namespace net |
170 | 171 |
171 #endif // NET_HTTP_HTTP_PROXY_CLIENT_SOCKET_H_ | 172 #endif // NET_HTTP_HTTP_PROXY_CLIENT_SOCKET_H_ |
OLD | NEW |