| 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_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 | 7 |
| 8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
| 9 #include "net/proxy/proxy_resolver.h" | 9 #include "net/proxy/proxy_resolver.h" |
| 10 #include "url/gurl.h" | 10 #include "url/gurl.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 NET_EXPORT_PRIVATE ProxyResolverWinHttp : public ProxyResolver { | 18 class NET_EXPORT_PRIVATE 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 const net::CompletionCallback& /*callback*/, | 26 const net::CompletionCallback& /*callback*/, |
| 27 RequestHandle* /*request*/, | 27 RequestHandle* /*request*/, |
| 28 const BoundNetLog& /*net_log*/) OVERRIDE; | 28 const BoundNetLog& /*net_log*/) override; |
| 29 virtual void CancelRequest(RequestHandle request) OVERRIDE; | 29 virtual void CancelRequest(RequestHandle request) override; |
| 30 | 30 |
| 31 virtual LoadState GetLoadState(RequestHandle request) const OVERRIDE; | 31 virtual LoadState GetLoadState(RequestHandle request) const override; |
| 32 | 32 |
| 33 virtual void CancelSetPacScript() OVERRIDE; | 33 virtual void CancelSetPacScript() override; |
| 34 | 34 |
| 35 virtual int SetPacScript( | 35 virtual int SetPacScript( |
| 36 const scoped_refptr<ProxyResolverScriptData>& script_data, | 36 const scoped_refptr<ProxyResolverScriptData>& script_data, |
| 37 const net::CompletionCallback& /*callback*/) OVERRIDE; | 37 const net::CompletionCallback& /*callback*/) override; |
| 38 | 38 |
| 39 private: | 39 private: |
| 40 bool OpenWinHttpSession(); | 40 bool OpenWinHttpSession(); |
| 41 void CloseWinHttpSession(); | 41 void CloseWinHttpSession(); |
| 42 | 42 |
| 43 // Proxy configuration is cached on the session handle. | 43 // Proxy configuration is cached on the session handle. |
| 44 HINTERNET session_handle_; | 44 HINTERNET session_handle_; |
| 45 | 45 |
| 46 GURL pac_url_; | 46 GURL pac_url_; |
| 47 | 47 |
| 48 DISALLOW_COPY_AND_ASSIGN(ProxyResolverWinHttp); | 48 DISALLOW_COPY_AND_ASSIGN(ProxyResolverWinHttp); |
| 49 }; | 49 }; |
| 50 | 50 |
| 51 } // namespace net | 51 } // namespace net |
| 52 | 52 |
| 53 #endif // NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ | 53 #endif // NET_PROXY_PROXY_RESOLVER_WINHTTP_H_ |
| OLD | NEW |