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