| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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_SERVICE_H_ | 5 #ifndef NET_PROXY_PROXY_SERVICE_H_ |
| 6 #define NET_PROXY_PROXY_SERVICE_H_ | 6 #define NET_PROXY_PROXY_SERVICE_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 | 26 |
| 27 class InitProxyResolver; | 27 class InitProxyResolver; |
| 28 class LoadLog; | 28 class LoadLog; |
| 29 class ProxyConfigService; | 29 class ProxyConfigService; |
| 30 class ProxyResolver; | 30 class ProxyResolver; |
| 31 class ProxyScriptFetcher; | 31 class ProxyScriptFetcher; |
| 32 | 32 |
| 33 // This class can be used to resolve the proxy server to use when loading a | 33 // This class can be used to resolve the proxy server to use when loading a |
| 34 // HTTP(S) URL. It uses the given ProxyResolver to handle the actual proxy | 34 // HTTP(S) URL. It uses the given ProxyResolver to handle the actual proxy |
| 35 // resolution. See ProxyResolverV8 for example. | 35 // resolution. See ProxyResolverV8 for example. |
| 36 class ProxyService { | 36 class ProxyService : public base::RefCountedThreadSafe<ProxyService> { |
| 37 public: | 37 public: |
| 38 // The instance takes ownership of |config_service| and |resolver|. | 38 // The instance takes ownership of |config_service| and |resolver|. |
| 39 ProxyService(ProxyConfigService* config_service, | 39 ProxyService(ProxyConfigService* config_service, ProxyResolver* resolver); |
| 40 ProxyResolver* resolver); | |
| 41 | 40 |
| 42 ~ProxyService(); | 41 ~ProxyService(); |
| 43 | 42 |
| 44 // Used internally to handle PAC queries. | 43 // Used internally to handle PAC queries. |
| 45 // TODO(eroman): consider naming this simply "Request". | 44 // TODO(eroman): consider naming this simply "Request". |
| 46 class PacRequest; | 45 class PacRequest; |
| 47 | 46 |
| 48 // Returns ERR_IO_PENDING if the proxy information could not be provided | 47 // Returns ERR_IO_PENDING if the proxy information could not be provided |
| 49 // synchronously, to indicate that the result will be available when the | 48 // synchronously, to indicate that the result will be available when the |
| 50 // callback is run. The callback is run on the thread that calls | 49 // callback is run. The callback is run on the thread that calls |
| (...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 291 | 290 |
| 292 base::WaitableEvent event_; | 291 base::WaitableEvent event_; |
| 293 CompletionCallbackImpl<SyncProxyServiceHelper> callback_; | 292 CompletionCallbackImpl<SyncProxyServiceHelper> callback_; |
| 294 ProxyInfo proxy_info_; | 293 ProxyInfo proxy_info_; |
| 295 int result_; | 294 int result_; |
| 296 }; | 295 }; |
| 297 | 296 |
| 298 } // namespace net | 297 } // namespace net |
| 299 | 298 |
| 300 #endif // NET_PROXY_PROXY_SERVICE_H_ | 299 #endif // NET_PROXY_PROXY_SERVICE_H_ |
| OLD | NEW |