OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 base::TimeDelta* next_delay) const = 0; | 90 base::TimeDelta* next_delay) const = 0; |
91 }; | 91 }; |
92 | 92 |
93 // The instance takes ownership of |config_service| and |resolver|. | 93 // The instance takes ownership of |config_service| and |resolver|. |
94 // |net_log| is a possibly NULL destination to send log events to. It must | 94 // |net_log| is a possibly NULL destination to send log events to. It must |
95 // remain alive for the lifetime of this ProxyService. | 95 // remain alive for the lifetime of this ProxyService. |
96 ProxyService(ProxyConfigService* config_service, | 96 ProxyService(ProxyConfigService* config_service, |
97 ProxyResolver* resolver, | 97 ProxyResolver* resolver, |
98 NetLog* net_log); | 98 NetLog* net_log); |
99 | 99 |
100 virtual ~ProxyService(); | 100 ~ProxyService() override; |
101 | 101 |
102 // Used internally to handle PAC queries. | 102 // Used internally to handle PAC queries. |
103 // TODO(eroman): consider naming this simply "Request". | 103 // TODO(eroman): consider naming this simply "Request". |
104 class PacRequest; | 104 class PacRequest; |
105 | 105 |
106 // Returns ERR_IO_PENDING if the proxy information could not be provided | 106 // Returns ERR_IO_PENDING if the proxy information could not be provided |
107 // synchronously, to indicate that the result will be available when the | 107 // synchronously, to indicate that the result will be available when the |
108 // callback is run. The callback is run on the thread that calls | 108 // callback is run. The callback is run on the thread that calls |
109 // ResolveProxy. | 109 // ResolveProxy. |
110 // | 110 // |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
368 void InitializeUsingLastFetchedConfig(); | 368 void InitializeUsingLastFetchedConfig(); |
369 | 369 |
370 // Start the initialization skipping past the "decision" phase. | 370 // Start the initialization skipping past the "decision" phase. |
371 void InitializeUsingDecidedConfig( | 371 void InitializeUsingDecidedConfig( |
372 int decider_result, | 372 int decider_result, |
373 ProxyResolverScriptData* script_data, | 373 ProxyResolverScriptData* script_data, |
374 const ProxyConfig& effective_config); | 374 const ProxyConfig& effective_config); |
375 | 375 |
376 // NetworkChangeNotifier::IPAddressObserver | 376 // NetworkChangeNotifier::IPAddressObserver |
377 // When this is called, we re-fetch PAC scripts and re-run WPAD. | 377 // When this is called, we re-fetch PAC scripts and re-run WPAD. |
378 virtual void OnIPAddressChanged() override; | 378 void OnIPAddressChanged() override; |
379 | 379 |
380 // NetworkChangeNotifier::DNSObserver | 380 // NetworkChangeNotifier::DNSObserver |
381 // We respond as above. | 381 // We respond as above. |
382 virtual void OnDNSChanged() override; | 382 void OnDNSChanged() override; |
383 | 383 |
384 // ProxyConfigService::Observer | 384 // ProxyConfigService::Observer |
385 virtual void OnProxyConfigChanged( | 385 void OnProxyConfigChanged( |
386 const ProxyConfig& config, | 386 const ProxyConfig& config, |
387 ProxyConfigService::ConfigAvailability availability) override; | 387 ProxyConfigService::ConfigAvailability availability) override; |
388 | 388 |
389 scoped_ptr<ProxyConfigService> config_service_; | 389 scoped_ptr<ProxyConfigService> config_service_; |
390 scoped_ptr<ProxyResolver> resolver_; | 390 scoped_ptr<ProxyResolver> resolver_; |
391 | 391 |
392 // We store the proxy configuration that was last fetched from the | 392 // We store the proxy configuration that was last fetched from the |
393 // ProxyConfigService, as well as the resulting "effective" configuration. | 393 // ProxyConfigService, as well as the resulting "effective" configuration. |
394 // The effective configuration is what we condense the original fetched | 394 // The effective configuration is what we condense the original fetched |
395 // settings to after testing the various automatic settings (auto-detect | 395 // settings to after testing the various automatic settings (auto-detect |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
447 | 447 |
448 // Whether child ProxyScriptDeciders should use QuickCheck | 448 // Whether child ProxyScriptDeciders should use QuickCheck |
449 bool quick_check_enabled_; | 449 bool quick_check_enabled_; |
450 | 450 |
451 DISALLOW_COPY_AND_ASSIGN(ProxyService); | 451 DISALLOW_COPY_AND_ASSIGN(ProxyService); |
452 }; | 452 }; |
453 | 453 |
454 } // namespace net | 454 } // namespace net |
455 | 455 |
456 #endif // NET_PROXY_PROXY_SERVICE_H_ | 456 #endif // NET_PROXY_PROXY_SERVICE_H_ |
OLD | NEW |