diff options
author | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-05 18:56:36 +0000 |
---|---|---|
committer | mpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-04-05 18:56:36 +0000 |
commit | 83055ea7ae7cadaf89b28bdfc96c61e7ec6b41a0 (patch) | |
tree | e572e9b5c088db6ee38bc8fe0f179e4982406def /chrome/browser/extensions | |
parent | 9993310623dcf7a6b9834def8fec39a810ca6693 (diff) | |
download | chromium_src-83055ea7ae7cadaf89b28bdfc96c61e7ec6b41a0.zip chromium_src-83055ea7ae7cadaf89b28bdfc96c61e7ec6b41a0.tar.gz chromium_src-83055ea7ae7cadaf89b28bdfc96c61e7ec6b41a0.tar.bz2 |
Move some of the new transient background page stuff into the extensions
namespace.
Also add ExtensionSytem::Get(Profile*) convenience wrapper.
BUG=no
TEST=no
Review URL: https://chromiumcodereview.appspot.com/9977019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130981 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
12 files changed, 44 insertions, 21 deletions
diff --git a/chrome/browser/extensions/api/alarms/alarms_api.cc b/chrome/browser/extensions/api/alarms/alarms_api.cc index 15d930d..f87d6a2 100644 --- a/chrome/browser/extensions/api/alarms/alarms_api.cc +++ b/chrome/browser/extensions/api/alarms/alarms_api.cc @@ -9,7 +9,6 @@ #include "base/values.h" #include "chrome/browser/browser_process.h" #include "chrome/browser/extensions/extension_event_router.h" -#include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/profiles/profile_manager.h" #include "chrome/common/extensions/api/experimental.alarms.h" @@ -36,6 +35,8 @@ void AlarmCallback(Profile* profile, const std::string& extension_id) { } +namespace extensions { + bool AlarmsCreateFunction::RunImpl() { scoped_ptr<Alarms::Create::Params> params( Alarms::Create::Params::Create(*args_)); @@ -71,3 +72,5 @@ bool AlarmsClearAllFunction::RunImpl() { error_ = "Not implemented."; return false; } + +} // namespace extensions diff --git a/chrome/browser/extensions/api/alarms/alarms_api.h b/chrome/browser/extensions/api/alarms/alarms_api.h index af378a3..4e01b28 100644 --- a/chrome/browser/extensions/api/alarms/alarms_api.h +++ b/chrome/browser/extensions/api/alarms/alarms_api.h @@ -8,6 +8,8 @@ #include "chrome/browser/extensions/extension_function.h" +namespace extensions { + class AlarmsCreateFunction : public SyncExtensionFunction { protected: virtual bool RunImpl() OVERRIDE; @@ -38,4 +40,6 @@ class AlarmsClearAllFunction : public SyncExtensionFunction { DECLARE_EXTENSION_FUNCTION_NAME("experimental.alarms.clearAll"); }; +} // namespace extensions + #endif // CHROME_BROWSER_EXTENSIONS_API_ALARMS_ALARMS_API_H__ diff --git a/chrome/browser/extensions/extension_event_router.cc b/chrome/browser/extensions/extension_event_router.cc index d73c6b9..32206f4 100644 --- a/chrome/browser/extensions/extension_event_router.cc +++ b/chrome/browser/extensions/extension_event_router.cc @@ -394,7 +394,7 @@ void ExtensionEventRouter::MaybeLoadLazyBackgroundPage( if (!CanDispatchEventToProfile(profile, extension, event, &event_args)) return; - LazyBackgroundTaskQueue* queue = + extensions::LazyBackgroundTaskQueue* queue = ExtensionSystem::Get(profile)->lazy_background_task_queue(); if (queue->ShouldEnqueueTask(profile, extension)) { queue->AddPendingTask( diff --git a/chrome/browser/extensions/extension_function_registry.cc b/chrome/browser/extensions/extension_function_registry.cc index 1546bef..dc84a93 100644 --- a/chrome/browser/extensions/extension_function_registry.cc +++ b/chrome/browser/extensions/extension_function_registry.cc @@ -87,11 +87,11 @@ void ExtensionFunctionRegistry::ResetFunctions() { // Register all functions here. // Alarms - RegisterFunction<AlarmsCreateFunction>(); - RegisterFunction<AlarmsGetFunction>(); - RegisterFunction<AlarmsGetAllFunction>(); - RegisterFunction<AlarmsClearFunction>(); - RegisterFunction<AlarmsClearAllFunction>(); + RegisterFunction<extensions::AlarmsCreateFunction>(); + RegisterFunction<extensions::AlarmsGetFunction>(); + RegisterFunction<extensions::AlarmsGetAllFunction>(); + RegisterFunction<extensions::AlarmsClearFunction>(); + RegisterFunction<extensions::AlarmsClearAllFunction>(); // Windows RegisterFunction<GetWindowFunction>(); diff --git a/chrome/browser/extensions/extension_message_service.cc b/chrome/browser/extensions/extension_message_service.cc index 0465810..1cf132a 100644 --- a/chrome/browser/extensions/extension_message_service.cc +++ b/chrome/browser/extensions/extension_message_service.cc @@ -165,7 +165,8 @@ void ExtensionMessageService::AllocatePortIdPair(int* port1, int* port2) { *port2 = port2_id; } -ExtensionMessageService::ExtensionMessageService(LazyBackgroundTaskQueue* queue) +ExtensionMessageService::ExtensionMessageService( + extensions::LazyBackgroundTaskQueue* queue) : lazy_background_task_queue_(queue) { registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_TERMINATED, content::NotificationService::AllBrowserContextsAndSources()); diff --git a/chrome/browser/extensions/extension_message_service.h b/chrome/browser/extensions/extension_message_service.h index c0c953b..3f3a7bd 100644 --- a/chrome/browser/extensions/extension_message_service.h +++ b/chrome/browser/extensions/extension_message_service.h @@ -16,7 +16,6 @@ #include "content/public/browser/notification_registrar.h" class ExtensionHost; -class LazyBackgroundTaskQueue; class Profile; namespace content { @@ -24,6 +23,10 @@ class RenderProcessHost; class WebContents; } +namespace extensions { +class LazyBackgroundTaskQueue; +} + // This class manages message and event passing between renderer processes. // It maintains a list of processes that are listening to events and a set of // open channels. @@ -57,7 +60,7 @@ class ExtensionMessageService : public content::NotificationObserver { // NOTE: this can be called from any thread. static void AllocatePortIdPair(int* port1, int* port2); - explicit ExtensionMessageService(LazyBackgroundTaskQueue* queue); + explicit ExtensionMessageService(extensions::LazyBackgroundTaskQueue* queue); virtual ~ExtensionMessageService(); // Given an extension's ID, opens a channel between the given renderer "port" @@ -137,7 +140,7 @@ class ExtensionMessageService : public content::NotificationObserver { PendingChannelMap pending_channels_; // Weak pointer. Guaranteed to outlive this class. - LazyBackgroundTaskQueue* lazy_background_task_queue_; + extensions::LazyBackgroundTaskQueue* lazy_background_task_queue_; DISALLOW_COPY_AND_ASSIGN(ExtensionMessageService); }; diff --git a/chrome/browser/extensions/extension_system.cc b/chrome/browser/extensions/extension_system.cc index 663f042..c1b7c2d 100644 --- a/chrome/browser/extensions/extension_system.cc +++ b/chrome/browser/extensions/extension_system.cc @@ -83,7 +83,8 @@ void ExtensionSystemImpl::Shared::InitInfoMap() { void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) { const CommandLine* command_line = CommandLine::ForCurrentProcess(); - lazy_background_task_queue_.reset(new LazyBackgroundTaskQueue(profile_)); + lazy_background_task_queue_.reset(new extensions::LazyBackgroundTaskQueue( + profile_)); extension_event_router_.reset(new ExtensionEventRouter(profile_)); extension_message_service_.reset(new ExtensionMessageService( lazy_background_task_queue_.get())); @@ -186,7 +187,7 @@ ExtensionInfoMap* ExtensionSystemImpl::Shared::info_map() { return extension_info_map_.get(); } -LazyBackgroundTaskQueue* +extensions::LazyBackgroundTaskQueue* ExtensionSystemImpl::Shared::lazy_background_task_queue() { return lazy_background_task_queue_.get(); } @@ -267,7 +268,8 @@ ExtensionInfoMap* ExtensionSystemImpl::info_map() { return shared_->info_map(); } -LazyBackgroundTaskQueue* ExtensionSystemImpl::lazy_background_task_queue() { +extensions::LazyBackgroundTaskQueue* +ExtensionSystemImpl::lazy_background_task_queue() { return shared_->lazy_background_task_queue(); } diff --git a/chrome/browser/extensions/extension_system.h b/chrome/browser/extensions/extension_system.h index f93a62e..c98be49 100644 --- a/chrome/browser/extensions/extension_system.h +++ b/chrome/browser/extensions/extension_system.h @@ -23,11 +23,11 @@ class ExtensionPrefs; class ExtensionPrefValueMap; class ExtensionProcessManager; class ExtensionService; -class LazyBackgroundTaskQueue; class Profile; class UserScriptMaster; namespace extensions { +class LazyBackgroundTaskQueue; class RulesRegistryService; } @@ -69,7 +69,7 @@ class ExtensionSystem : public ProfileKeyedService { virtual ExtensionInfoMap* info_map() = 0; // The LazyBackgroundTaskQueue is created at startup. - virtual LazyBackgroundTaskQueue* lazy_background_task_queue() = 0; + virtual extensions::LazyBackgroundTaskQueue* lazy_background_task_queue() = 0; // The ExtensionMessageService is created at startup. virtual ExtensionMessageService* message_service() = 0; @@ -115,7 +115,7 @@ class ExtensionSystemImpl : public ExtensionSystem { virtual UserScriptMaster* user_script_master() OVERRIDE; // shared virtual ExtensionDevToolsManager* devtools_manager() OVERRIDE; virtual ExtensionProcessManager* process_manager() OVERRIDE; - virtual LazyBackgroundTaskQueue* lazy_background_task_queue() + virtual extensions::LazyBackgroundTaskQueue* lazy_background_task_queue() OVERRIDE; // shared virtual ExtensionInfoMap* info_map() OVERRIDE; // shared virtual ExtensionMessageService* message_service() OVERRIDE; // shared @@ -149,7 +149,7 @@ class ExtensionSystemImpl : public ExtensionSystem { ExtensionService* extension_service(); UserScriptMaster* user_script_master(); ExtensionInfoMap* info_map(); - LazyBackgroundTaskQueue* lazy_background_task_queue(); + extensions::LazyBackgroundTaskQueue* lazy_background_task_queue(); ExtensionMessageService* message_service(); ExtensionEventRouter* event_router(); extensions::RulesRegistryService* rules_registry_service(); @@ -167,7 +167,7 @@ class ExtensionSystemImpl : public ExtensionSystem { // extension_info_map_ needs to outlive extension_process_manager_. scoped_refptr<ExtensionInfoMap> extension_info_map_; // This is a dependency of ExtensionMessageService and ExtensionEventRouter. - scoped_ptr<LazyBackgroundTaskQueue> lazy_background_task_queue_; + scoped_ptr<extensions::LazyBackgroundTaskQueue> lazy_background_task_queue_; scoped_ptr<ExtensionMessageService> extension_message_service_; scoped_ptr<ExtensionEventRouter> extension_event_router_; scoped_ptr<ExtensionNavigationObserver> extension_navigation_observer_; diff --git a/chrome/browser/extensions/lazy_background_task_queue.cc b/chrome/browser/extensions/lazy_background_task_queue.cc index b5ac94d..4691c47 100644 --- a/chrome/browser/extensions/lazy_background_task_queue.cc +++ b/chrome/browser/extensions/lazy_background_task_queue.cc @@ -23,6 +23,8 @@ #include "content/public/browser/site_instance.h" #include "content/public/browser/web_contents.h" +namespace extensions { + LazyBackgroundTaskQueue::LazyBackgroundTaskQueue(Profile* profile) : profile_(profile) { registrar_.Add(this, chrome::NOTIFICATION_EXTENSION_HOST_DID_STOP_LOADING, @@ -131,3 +133,5 @@ void LazyBackgroundTaskQueue::Observe( break; } } + +} // namespace extensions diff --git a/chrome/browser/extensions/lazy_background_task_queue.h b/chrome/browser/extensions/lazy_background_task_queue.h index 0f4c830..18860fa 100644 --- a/chrome/browser/extensions/lazy_background_task_queue.h +++ b/chrome/browser/extensions/lazy_background_task_queue.h @@ -19,6 +19,8 @@ class Extension; class ExtensionHost; class Profile; +namespace extensions { + // This class maintains a queue of tasks that should execute when an // extension's lazy background page is loaded. It is also in charge of loading // the page when the first task is queued. @@ -66,4 +68,6 @@ class LazyBackgroundTaskQueue : public content::NotificationObserver { PendingTasksMap pending_tasks_; }; +} // namespace extensions + #endif // CHROME_BROWSER_EXTENSIONS_LAZY_BACKGROUND_TASK_QUEUE_H_ diff --git a/chrome/browser/extensions/test_extension_system.cc b/chrome/browser/extensions/test_extension_system.cc index a3436aa..a15956f 100644 --- a/chrome/browser/extensions/test_extension_system.cc +++ b/chrome/browser/extensions/test_extension_system.cc @@ -85,7 +85,8 @@ ExtensionInfoMap* TestExtensionSystem::info_map() { return NULL; } -LazyBackgroundTaskQueue* TestExtensionSystem::lazy_background_task_queue() { +extensions::LazyBackgroundTaskQueue* +TestExtensionSystem::lazy_background_task_queue() { return NULL; } diff --git a/chrome/browser/extensions/test_extension_system.h b/chrome/browser/extensions/test_extension_system.h index 94cd663..411c775 100644 --- a/chrome/browser/extensions/test_extension_system.h +++ b/chrome/browser/extensions/test_extension_system.h @@ -37,7 +37,8 @@ class TestExtensionSystem : public ExtensionSystem { virtual ExtensionDevToolsManager* devtools_manager() OVERRIDE; virtual ExtensionProcessManager* process_manager() OVERRIDE; virtual ExtensionInfoMap* info_map() OVERRIDE; - virtual LazyBackgroundTaskQueue* lazy_background_task_queue() OVERRIDE; + virtual extensions::LazyBackgroundTaskQueue* + lazy_background_task_queue() OVERRIDE; virtual ExtensionMessageService* message_service() OVERRIDE; virtual ExtensionEventRouter* event_router() OVERRIDE; virtual extensions::RulesRegistryService* rules_registry_service() |