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 CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ | 5 #ifndef CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ |
6 #define CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ | 6 #define CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 | 10 |
| 11 class ChromeProxyConfigService; |
11 class CommandLine; | 12 class CommandLine; |
12 class PrefProxyConfigTracker; | 13 class PrefProxyConfigTrackerImpl; |
| 14 class PrefService; |
| 15 |
| 16 #if defined(OS_CHROMEOS) |
| 17 namespace chromeos { |
| 18 class ProxyConfigServiceImpl; |
| 19 } |
| 20 #endif // defined(OS_CHROMEOS) |
13 | 21 |
14 namespace net { | 22 namespace net { |
15 class NetLog; | 23 class NetLog; |
16 class ProxyConfigService; | 24 class ProxyConfigService; |
17 class ProxyService; | 25 class ProxyService; |
18 class URLRequestContext; | 26 class URLRequestContext; |
19 } // namespace net | 27 } // namespace net |
20 | 28 |
21 class ProxyServiceFactory { | 29 class ProxyServiceFactory { |
22 public: | 30 public: |
23 // Creates a ProxyConfigService that delivers the system preferences | 31 // Creates a ProxyConfigService that delivers the system preferences |
24 // (or the respective ChromeOS equivalent). | 32 // (or the respective ChromeOS equivalent). |
25 static net::ProxyConfigService* CreateProxyConfigService( | 33 static ChromeProxyConfigService* CreateProxyConfigService(); |
26 PrefProxyConfigTracker* proxy_config_tracker); | 34 |
| 35 #if defined(OS_CHROMEOS) |
| 36 static chromeos::ProxyConfigServiceImpl* CreatePrefProxyConfigTracker( |
| 37 PrefService* pref_service); |
| 38 #else |
| 39 static PrefProxyConfigTrackerImpl* CreatePrefProxyConfigTracker( |
| 40 PrefService* pref_service); |
| 41 #endif // defined(OS_CHROMEOS) |
27 | 42 |
28 // Create a proxy service according to the options on command line. | 43 // Create a proxy service according to the options on command line. |
29 static net::ProxyService* CreateProxyService( | 44 static net::ProxyService* CreateProxyService( |
30 net::NetLog* net_log, | 45 net::NetLog* net_log, |
31 net::URLRequestContext* context, | 46 net::URLRequestContext* context, |
32 net::ProxyConfigService* proxy_config_service, | 47 net::ProxyConfigService* proxy_config_service, |
33 const CommandLine& command_line); | 48 const CommandLine& command_line); |
34 | 49 |
35 private: | 50 private: |
36 DISALLOW_IMPLICIT_CONSTRUCTORS(ProxyServiceFactory); | 51 DISALLOW_IMPLICIT_CONSTRUCTORS(ProxyServiceFactory); |
37 }; | 52 }; |
38 | 53 |
39 #endif // CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ | 54 #endif // CHROME_BROWSER_NET_PROXY_SERVICE_FACTORY_H_ |
OLD | NEW |