OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "chrome/browser/extensions/chrome_extensions_browser_client.h" | 5 #include "chrome/browser/extensions/chrome_extensions_browser_client.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
9 #include "base/version.h" | 9 #include "base/version.h" |
10 #include "chrome/browser/app_mode/app_mode_utils.h" | 10 #include "chrome/browser/app_mode/app_mode_utils.h" |
(...skipping 22 matching lines...) Expand all Loading... |
33 #include "chrome/common/chrome_version_info.h" | 33 #include "chrome/common/chrome_version_info.h" |
34 #include "chrome/common/extensions/features/feature_channel.h" | 34 #include "chrome/common/extensions/features/feature_channel.h" |
35 #include "chrome/common/pref_names.h" | 35 #include "chrome/common/pref_names.h" |
36 #include "extensions/browser/api/generated_api_registration.h" | 36 #include "extensions/browser/api/generated_api_registration.h" |
37 #include "extensions/browser/extension_function_registry.h" | 37 #include "extensions/browser/extension_function_registry.h" |
38 #include "extensions/browser/extension_prefs.h" | 38 #include "extensions/browser/extension_prefs.h" |
39 #include "extensions/browser/pref_names.h" | 39 #include "extensions/browser/pref_names.h" |
40 #include "extensions/browser/url_request_util.h" | 40 #include "extensions/browser/url_request_util.h" |
41 | 41 |
42 #if defined(OS_CHROMEOS) | 42 #if defined(OS_CHROMEOS) |
43 #include "chrome/browser/extensions/updater/extension_cache_impl.h" | |
44 #include "chromeos/chromeos_switches.h" | 43 #include "chromeos/chromeos_switches.h" |
45 #else | |
46 #include "extensions/browser/updater/null_extension_cache.h" | |
47 #endif | 44 #endif |
48 | 45 |
49 namespace extensions { | 46 namespace extensions { |
50 | 47 |
51 ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() { | 48 ChromeExtensionsBrowserClient::ChromeExtensionsBrowserClient() { |
52 process_manager_delegate_.reset(new ChromeProcessManagerDelegate); | 49 process_manager_delegate_.reset(new ChromeProcessManagerDelegate); |
53 api_client_.reset(new ChromeExtensionsAPIClient); | 50 api_client_.reset(new ChromeExtensionsAPIClient); |
54 // Only set if it hasn't already been set (e.g. by a test). | 51 // Only set if it hasn't already been set (e.g. by a test). |
55 if (GetCurrentChannel() == GetDefaultChannel()) | 52 if (GetCurrentChannel() == GetDefaultChannel()) |
56 SetCurrentChannel(chrome::VersionInfo::GetChannel()); | 53 SetCurrentChannel(chrome::VersionInfo::GetChannel()); |
57 | |
58 #if defined(OS_CHROMEOS) | |
59 extension_cache_.reset(new ExtensionCacheImpl()); | |
60 #else | |
61 extension_cache_.reset(new NullExtensionCache()); | |
62 #endif | |
63 } | 54 } |
64 | 55 |
65 ChromeExtensionsBrowserClient::~ChromeExtensionsBrowserClient() {} | 56 ChromeExtensionsBrowserClient::~ChromeExtensionsBrowserClient() {} |
66 | 57 |
67 bool ChromeExtensionsBrowserClient::IsShuttingDown() { | 58 bool ChromeExtensionsBrowserClient::IsShuttingDown() { |
68 return g_browser_process->IsShuttingDown(); | 59 return g_browser_process->IsShuttingDown(); |
69 } | 60 } |
70 | 61 |
71 bool ChromeExtensionsBrowserClient::AreExtensionsDisabled( | 62 bool ChromeExtensionsBrowserClient::AreExtensionsDisabled( |
72 const CommandLine& command_line, | 63 const CommandLine& command_line, |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
244 registry->RegisterFunction< | 235 registry->RegisterFunction< |
245 extensions::chromedirectsetting::ClearDirectSettingFunction>(); | 236 extensions::chromedirectsetting::ClearDirectSettingFunction>(); |
246 | 237 |
247 // Generated APIs from lower-level modules. | 238 // Generated APIs from lower-level modules. |
248 extensions::core_api::GeneratedFunctionRegistry::RegisterAll(registry); | 239 extensions::core_api::GeneratedFunctionRegistry::RegisterAll(registry); |
249 | 240 |
250 // Generated APIs from Chrome. | 241 // Generated APIs from Chrome. |
251 extensions::api::GeneratedFunctionRegistry::RegisterAll(registry); | 242 extensions::api::GeneratedFunctionRegistry::RegisterAll(registry); |
252 } | 243 } |
253 | 244 |
254 scoped_ptr<extensions::RuntimeAPIDelegate> | |
255 ChromeExtensionsBrowserClient::CreateRuntimeAPIDelegate( | |
256 content::BrowserContext* context) const { | |
257 return scoped_ptr<extensions::RuntimeAPIDelegate>( | |
258 new ChromeRuntimeAPIDelegate(context)); | |
259 } | |
260 | |
261 ComponentExtensionResourceManager* | 245 ComponentExtensionResourceManager* |
262 ChromeExtensionsBrowserClient::GetComponentExtensionResourceManager() { | 246 ChromeExtensionsBrowserClient::GetComponentExtensionResourceManager() { |
263 if (!resource_manager_) | 247 if (!resource_manager_) |
264 resource_manager_.reset(new ChromeComponentExtensionResourceManager()); | 248 resource_manager_.reset(new ChromeComponentExtensionResourceManager()); |
265 return resource_manager_.get(); | 249 return resource_manager_.get(); |
266 } | 250 } |
267 | 251 |
268 void ChromeExtensionsBrowserClient::BroadcastEventToRenderers( | 252 void ChromeExtensionsBrowserClient::BroadcastEventToRenderers( |
269 const std::string& event_name, | 253 const std::string& event_name, |
270 scoped_ptr<base::ListValue> args) { | 254 scoped_ptr<base::ListValue> args) { |
271 g_browser_process->extension_event_router_forwarder() | 255 g_browser_process->extension_event_router_forwarder() |
272 ->BroadcastEventToRenderers(event_name, args.Pass(), GURL()); | 256 ->BroadcastEventToRenderers(event_name, args.Pass(), GURL()); |
273 } | 257 } |
274 | 258 |
275 net::NetLog* ChromeExtensionsBrowserClient::GetNetLog() { | 259 net::NetLog* ChromeExtensionsBrowserClient::GetNetLog() { |
276 return g_browser_process->net_log(); | 260 return g_browser_process->net_log(); |
277 } | 261 } |
278 | 262 |
279 ExtensionCache* ChromeExtensionsBrowserClient::GetExtensionCache() { | 263 scoped_ptr<extensions::RuntimeAPIDelegate> |
280 return extension_cache_.get(); | 264 ChromeExtensionsBrowserClient::CreateRuntimeAPIDelegate( |
| 265 content::BrowserContext* context) const { |
| 266 return scoped_ptr<extensions::RuntimeAPIDelegate>( |
| 267 new ChromeRuntimeAPIDelegate(context)); |
281 } | 268 } |
282 | 269 |
283 } // namespace extensions | 270 } // namespace extensions |
OLD | NEW |