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_PROXY_PROXY_RESOLVER_WINHTTP_H_ | 5 #ifndef NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ |
6 #define NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ | 6 #define NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "googleurl/src/gurl.h" | 9 #include "googleurl/src/gurl.h" |
10 #include "net/proxy/proxy_resolver.h" | 10 #include "net/proxy/proxy_resolver.h" |
11 | 11 |
12 typedef void* HINTERNET; // From winhttp.h | 12 typedef void* HINTERNET; // From winhttp.h |
13 | 13 |
14 namespace net { | 14 namespace net { |
15 | 15 |
16 // An implementation of ProxyResolver that uses WinHTTP and the system | 16 // An implementation of ProxyResolver that uses WinHTTP and the system |
17 // proxy settings. | 17 // proxy settings. |
18 class ProxyResolverWinHttp : public ProxyResolver { | 18 class ProxyResolverWinHttp : public ProxyResolver { |
19 public: | 19 public: |
20 ProxyResolverWinHttp(); | 20 ProxyResolverWinHttp(); |
21 virtual ~ProxyResolverWinHttp(); | 21 virtual ~ProxyResolverWinHttp(); |
22 | 22 |
23 // ProxyResolver implementation: | 23 // ProxyResolver implementation: |
24 virtual int GetProxyForURL(const GURL& url, | 24 virtual int GetProxyForURL(const GURL& url, |
25 ProxyInfo* results, | 25 ProxyInfo* results, |
26 CompletionCallback* /*callback*/, | 26 CompletionCallback* /*callback*/, |
27 RequestHandle* /*request*/, | 27 RequestHandle* /*request*/, |
28 const BoundNetLog& /*net_log*/); | 28 const BoundNetLog& /*net_log*/); |
29 virtual void CancelRequest(RequestHandle request); | 29 virtual void CancelRequest(RequestHandle request); |
| 30 |
| 31 virtual void CancelSetPacScript(); |
| 32 |
30 virtual int SetPacScript( | 33 virtual int SetPacScript( |
31 const scoped_refptr<ProxyResolverScriptData>& script_data, | 34 const scoped_refptr<ProxyResolverScriptData>& script_data, |
32 CompletionCallback* /*callback*/); | 35 CompletionCallback* /*callback*/); |
33 | 36 |
34 private: | 37 private: |
35 bool OpenWinHttpSession(); | 38 bool OpenWinHttpSession(); |
36 void CloseWinHttpSession(); | 39 void CloseWinHttpSession(); |
37 | 40 |
38 // Proxy configuration is cached on the session handle. | 41 // Proxy configuration is cached on the session handle. |
39 HINTERNET session_handle_; | 42 HINTERNET session_handle_; |
40 | 43 |
41 GURL pac_url_; | 44 GURL pac_url_; |
42 | 45 |
43 DISALLOW_COPY_AND_ASSIGN(ProxyResolverWinHttp); | 46 DISALLOW_COPY_AND_ASSIGN(ProxyResolverWinHttp); |
44 }; | 47 }; |
45 | 48 |
46 } // namespace net | 49 } // namespace net |
47 | 50 |
48 #endif // NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ | 51 #endif // NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ |
OLD | NEW |