diff options
author | rdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-25 17:40:49 +0000 |
---|---|---|
committer | rdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-25 17:40:49 +0000 |
commit | 40404bcddf2a1d19906ab9beb3a4cb1fa4d90f87 (patch) | |
tree | 62d5a5d8073366c52975bdf3c54b0cef0729e807 /chrome/browser/extensions | |
parent | c4185460ea68a358320cca15cbe836e9dfb55138 (diff) | |
download | chromium_src-40404bcddf2a1d19906ab9beb3a4cb1fa4d90f87.zip chromium_src-40404bcddf2a1d19906ab9beb3a4cb1fa4d90f87.tar.gz chromium_src-40404bcddf2a1d19906ab9beb3a4cb1fa4d90f87.tar.bz2 |
Moved ExtensionMessage* into extensions namespace
Moved ExtensionMessageBundle, ExtensionMessageService, and
ExtensionMessageHandler into extensions namespace. Renamed appropriately.
BUG=137298, 117261
Review URL: https://chromiumcodereview.appspot.com/10787002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148354 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r-- | chrome/browser/extensions/api/tabs/execute_code_in_tab_function.cc | 9 | ||||
-rw-r--r-- | chrome/browser/extensions/extension_system.cc | 11 | ||||
-rw-r--r-- | chrome/browser/extensions/extension_system.h | 14 | ||||
-rw-r--r-- | chrome/browser/extensions/extension_system_factory.cc | 1 | ||||
-rw-r--r-- | chrome/browser/extensions/message_handler.cc (renamed from chrome/browser/extensions/extension_message_handler.cc) | 24 | ||||
-rw-r--r-- | chrome/browser/extensions/message_handler.h (renamed from chrome/browser/extensions/extension_message_handler.h) | 18 | ||||
-rw-r--r-- | chrome/browser/extensions/message_service.cc (renamed from chrome/browser/extensions/extension_message_service.cc) | 95 | ||||
-rw-r--r-- | chrome/browser/extensions/message_service.h (renamed from chrome/browser/extensions/extension_message_service.h) | 21 | ||||
-rw-r--r-- | chrome/browser/extensions/test_extension_system.cc | 4 | ||||
-rw-r--r-- | chrome/browser/extensions/test_extension_system.h | 2 | ||||
-rw-r--r-- | chrome/browser/extensions/user_script_master.cc | 6 |
11 files changed, 106 insertions, 99 deletions
diff --git a/chrome/browser/extensions/api/tabs/execute_code_in_tab_function.cc b/chrome/browser/extensions/api/tabs/execute_code_in_tab_function.cc index c51a0176..699eb90 100644 --- a/chrome/browser/extensions/api/tabs/execute_code_in_tab_function.cc +++ b/chrome/browser/extensions/api/tabs/execute_code_in_tab_function.cc @@ -23,8 +23,8 @@ #include "chrome/common/extensions/extension_file_util.h" #include "chrome/common/extensions/extension_l10n_util.h" #include "chrome/common/extensions/extension_manifest_constants.h" -#include "chrome/common/extensions/extension_message_bundle.h" #include "chrome/common/extensions/extension_messages.h" +#include "chrome/common/extensions/message_bundle.h" #include "content/public/browser/render_view_host.h" #include "content/public/browser/web_contents.h" @@ -172,7 +172,8 @@ void ExecuteCodeInTabFunction::DidLoadFile(bool success, if (success && function_name == TabsInsertCSSFunction::function_name() && extension != NULL && - data.find(ExtensionMessageBundle::kMessageBegin) != std::string::npos) { + data.find( + extensions::MessageBundle::kMessageBegin) != std::string::npos) { BrowserThread::PostTask( BrowserThread::FILE, FROM_HERE, base::Bind(&ExecuteCodeInTabFunction::LocalizeCSS, this, @@ -191,13 +192,13 @@ void ExecuteCodeInTabFunction::LocalizeCSS( const FilePath& extension_path, const std::string& extension_default_locale) { scoped_ptr<SubstitutionMap> localization_messages( - extension_file_util::LoadExtensionMessageBundleSubstitutionMap( + extension_file_util::LoadMessageBundleSubstitutionMap( extension_path, extension_id, extension_default_locale)); // We need to do message replacement on the data, so it has to be mutable. std::string css_data = data; std::string error; - ExtensionMessageBundle::ReplaceMessagesWithExternalDictionary( + extensions::MessageBundle::ReplaceMessagesWithExternalDictionary( *localization_messages, &css_data, &error); // Call back DidLoadAndLocalizeFile on the UI thread. The success parameter diff --git a/chrome/browser/extensions/extension_system.cc b/chrome/browser/extensions/extension_system.cc index 7be1707..e5ca663 100644 --- a/chrome/browser/extensions/extension_system.cc +++ b/chrome/browser/extensions/extension_system.cc @@ -17,7 +17,6 @@ #include "chrome/browser/extensions/extension_devtools_manager.h" #include "chrome/browser/extensions/extension_error_reporter.h" #include "chrome/browser/extensions/extension_info_map.h" -#include "chrome/browser/extensions/extension_message_service.h" #include "chrome/browser/extensions/extension_navigation_observer.h" #include "chrome/browser/extensions/extension_pref_store.h" #include "chrome/browser/extensions/extension_pref_value_map.h" @@ -27,6 +26,7 @@ #include "chrome/browser/extensions/extension_system_factory.h" #include "chrome/browser/extensions/lazy_background_task_queue.h" #include "chrome/browser/extensions/management_policy.h" +#include "chrome/browser/extensions/message_service.h" #include "chrome/browser/extensions/state_store.h" #include "chrome/browser/extensions/unpacked_installer.h" #include "chrome/browser/extensions/user_script_master.h" @@ -107,9 +107,8 @@ void ExtensionSystemImpl::Shared::Init(bool extensions_enabled) { const CommandLine* command_line = CommandLine::ForCurrentProcess(); lazy_background_task_queue_.reset(new LazyBackgroundTaskQueue(profile_)); + message_service_.reset(new MessageService(lazy_background_task_queue_.get())); extension_event_router_.reset(new EventRouter(profile_)); - extension_message_service_.reset(new ExtensionMessageService( - lazy_background_task_queue_.get())); extension_navigation_observer_.reset( new ExtensionNavigationObserver(profile_)); @@ -229,8 +228,8 @@ LazyBackgroundTaskQueue* return lazy_background_task_queue_.get(); } -ExtensionMessageService* ExtensionSystemImpl::Shared::message_service() { - return extension_message_service_.get(); +MessageService* ExtensionSystemImpl::Shared::message_service() { + return message_service_.get(); } EventRouter* ExtensionSystemImpl::Shared::event_router() { @@ -327,7 +326,7 @@ LazyBackgroundTaskQueue* ExtensionSystemImpl::lazy_background_task_queue() { return shared_->lazy_background_task_queue(); } -ExtensionMessageService* ExtensionSystemImpl::message_service() { +MessageService* ExtensionSystemImpl::message_service() { return shared_->message_service(); } diff --git a/chrome/browser/extensions/extension_system.h b/chrome/browser/extensions/extension_system.h index 3b7921b..bf225c0 100644 --- a/chrome/browser/extensions/extension_system.h +++ b/chrome/browser/extensions/extension_system.h @@ -18,7 +18,6 @@ class ExtensionDevToolsManager; class ExtensionInfoMap; -class ExtensionMessageService; class ExtensionNavigationObserver; class ExtensionProcessManager; class ExtensionService; @@ -34,6 +33,7 @@ class ExtensionPrefs; class ExtensionSystemSharedFactory; class LazyBackgroundTaskQueue; class ManagementPolicy; +class MessageService; class RulesRegistryService; class StateStore; class UserScriptMaster; @@ -89,8 +89,8 @@ class ExtensionSystem : public ProfileKeyedService { // The LazyBackgroundTaskQueue is created at startup. virtual LazyBackgroundTaskQueue* lazy_background_task_queue() = 0; - // The ExtensionMessageService is created at startup. - virtual ExtensionMessageService* message_service() = 0; + // The MessageService is created at startup. + virtual MessageService* message_service() = 0; // The EventRouter is created at startup. virtual EventRouter* event_router() = 0; @@ -151,7 +151,7 @@ class ExtensionSystemImpl : public ExtensionSystem { virtual LazyBackgroundTaskQueue* lazy_background_task_queue() OVERRIDE; // shared virtual ExtensionInfoMap* info_map() OVERRIDE; // shared - virtual ExtensionMessageService* message_service() OVERRIDE; // shared + virtual MessageService* message_service() OVERRIDE; // shared virtual EventRouter* event_router() OVERRIDE; // shared virtual RulesRegistryService* rules_registry_service() OVERRIDE; // shared @@ -191,7 +191,7 @@ class ExtensionSystemImpl : public ExtensionSystem { UserScriptMaster* user_script_master(); ExtensionInfoMap* info_map(); LazyBackgroundTaskQueue* lazy_background_task_queue(); - ExtensionMessageService* message_service(); + MessageService* message_service(); EventRouter* event_router(); RulesRegistryService* rules_registry_service(); @@ -208,9 +208,9 @@ class ExtensionSystemImpl : public ExtensionSystem { scoped_refptr<UserScriptMaster> user_script_master_; // extension_info_map_ needs to outlive extension_process_manager_. scoped_refptr<ExtensionInfoMap> extension_info_map_; - // This is a dependency of ExtensionMessageService and EventRouter. + // This is a dependency of MessageService and EventRouter. scoped_ptr<LazyBackgroundTaskQueue> lazy_background_task_queue_; - scoped_ptr<ExtensionMessageService> extension_message_service_; + scoped_ptr<MessageService> message_service_; scoped_ptr<EventRouter> extension_event_router_; scoped_ptr<ExtensionNavigationObserver> extension_navigation_observer_; scoped_ptr<RulesRegistryService> rules_registry_service_; diff --git a/chrome/browser/extensions/extension_system_factory.cc b/chrome/browser/extensions/extension_system_factory.cc index 84458c4..0955cb5 100644 --- a/chrome/browser/extensions/extension_system_factory.cc +++ b/chrome/browser/extensions/extension_system_factory.cc @@ -4,7 +4,6 @@ #include "chrome/browser/extensions/extension_system_factory.h" -#include "chrome/browser/extensions/extension_message_service.h" #include "chrome/browser/extensions/extension_prefs.h" #include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/extensions/extension_system.h" diff --git a/chrome/browser/extensions/extension_message_handler.cc b/chrome/browser/extensions/message_handler.cc index 75272f8..86f48a5 100644 --- a/chrome/browser/extensions/extension_message_handler.cc +++ b/chrome/browser/extensions/message_handler.cc @@ -2,10 +2,10 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/extensions/extension_message_handler.h" +#include "chrome/browser/extensions/message_handler.h" -#include "chrome/browser/extensions/extension_message_service.h" #include "chrome/browser/extensions/extension_system.h" +#include "chrome/browser/extensions/message_service.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/view_type_utils.h" #include "chrome/common/extensions/extension_messages.h" @@ -15,38 +15,42 @@ using content::WebContents; -ExtensionMessageHandler::ExtensionMessageHandler( +namespace extensions { + +MessageHandler::MessageHandler( content::RenderViewHost* render_view_host) : content::RenderViewHostObserver(render_view_host) { } -ExtensionMessageHandler::~ExtensionMessageHandler() { +MessageHandler::~MessageHandler() { } -bool ExtensionMessageHandler::OnMessageReceived( +bool MessageHandler::OnMessageReceived( const IPC::Message& message) { bool handled = true; - IPC_BEGIN_MESSAGE_MAP(ExtensionMessageHandler, message) + IPC_BEGIN_MESSAGE_MAP(MessageHandler, message) IPC_MESSAGE_HANDLER(ExtensionHostMsg_PostMessage, OnPostMessage) IPC_MESSAGE_UNHANDLED(handled = false) IPC_END_MESSAGE_MAP() return handled; } -void ExtensionMessageHandler::RenderViewHostInitialized() { +void MessageHandler::RenderViewHostInitialized() { WebContents* web_contents = WebContents::FromRenderViewHost(render_view_host()); Send(new ExtensionMsg_NotifyRenderViewType( routing_id(), chrome::GetViewType(web_contents))); } -void ExtensionMessageHandler::OnPostMessage(int port_id, +void MessageHandler::OnPostMessage(int port_id, const std::string& message) { Profile* profile = Profile::FromBrowserContext( render_view_host()->GetProcess()->GetBrowserContext()); - ExtensionMessageService* message_service = - extensions::ExtensionSystem::Get(profile)->message_service(); + MessageService* message_service = + ExtensionSystem::Get(profile)->message_service(); if (message_service) { message_service->PostMessageFromRenderer(port_id, message); } } + +} // namespace extensions diff --git a/chrome/browser/extensions/extension_message_handler.h b/chrome/browser/extensions/message_handler.h index 48cdbe9..140105d 100644 --- a/chrome/browser/extensions/extension_message_handler.h +++ b/chrome/browser/extensions/message_handler.h @@ -2,13 +2,15 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_HANDLER_H_ -#define CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_HANDLER_H_ +#ifndef CHROME_BROWSER_EXTENSIONS_MESSAGE_HANDLER_H_ +#define CHROME_BROWSER_EXTENSIONS_MESSAGE_HANDLER_H_ #include <string> #include "content/public/browser/render_view_host_observer.h" +namespace extensions { + // Filters and dispatches extension-related IPC messages that arrive from // renderers. There is one of these objects for each RenderViewHost in Chrome. // Contrast this with extensions::TabHelper, which is only created for @@ -19,11 +21,11 @@ // could eliminate this class. Right now, we don't end up with an EFD for tab // contents unless that tab contents is hosting chrome-extension:// URLs. That // still leaves content scripts. See also: crbug.com/80307. -class ExtensionMessageHandler : public content::RenderViewHostObserver { +class MessageHandler : public content::RenderViewHostObserver { public: // |sender| is guaranteed to outlive this object. - explicit ExtensionMessageHandler(content::RenderViewHost* render_view_host); - virtual ~ExtensionMessageHandler(); + explicit MessageHandler(content::RenderViewHost* render_view_host); + virtual ~MessageHandler(); // RenderViewHostObserver overrides. virtual void RenderViewHostInitialized() OVERRIDE; @@ -33,7 +35,9 @@ class ExtensionMessageHandler : public content::RenderViewHostObserver { // Message handlers. void OnPostMessage(int port_id, const std::string& message); - DISALLOW_COPY_AND_ASSIGN(ExtensionMessageHandler); + DISALLOW_COPY_AND_ASSIGN(MessageHandler); }; -#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_HANDLER_H_ +} // namespace extensions + +#endif // CHROME_BROWSER_EXTENSIONS_MESSAGE_HANDLER_H_ diff --git a/chrome/browser/extensions/extension_message_service.cc b/chrome/browser/extensions/message_service.cc index d9f5477..8758c13 100644 --- a/chrome/browser/extensions/extension_message_service.cc +++ b/chrome/browser/extensions/message_service.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/browser/extensions/extension_message_service.h" +#include "chrome/browser/extensions/message_service.h" #include "base/atomic_sequence_num.h" #include "base/bind.h" @@ -45,7 +45,9 @@ using content::WebContents; // Change even to odd and vice versa, to get the other side of a given channel. #define GET_OPPOSITE_PORT_ID(source_port_id) ((source_port_id) ^ 1) -struct ExtensionMessageService::MessagePort { +namespace extensions { + +struct MessageService::MessagePort { content::RenderProcessHost* process; int routing_id; std::string extension_id; @@ -64,12 +66,12 @@ struct ExtensionMessageService::MessagePort { background_host_ptr(NULL) {} }; -struct ExtensionMessageService::MessageChannel { - ExtensionMessageService::MessagePort opener; - ExtensionMessageService::MessagePort receiver; +struct MessageService::MessageChannel { + MessageService::MessagePort opener; + MessageService::MessagePort receiver; }; -struct ExtensionMessageService::OpenChannelParams { +struct MessageService::OpenChannelParams { content::RenderProcessHost* source; std::string tab_json; MessagePort receiver; @@ -98,7 +100,7 @@ namespace { static base::StaticAtomicSequenceNumber g_next_channel_id; -static void DispatchOnConnect(const ExtensionMessageService::MessagePort& port, +static void DispatchOnConnect(const MessageService::MessagePort& port, int dest_port_id, const std::string& channel_name, const std::string& tab_json, @@ -109,15 +111,16 @@ static void DispatchOnConnect(const ExtensionMessageService::MessagePort& port, tab_json, source_extension_id, target_extension_id)); } -static void DispatchOnDisconnect( - const ExtensionMessageService::MessagePort& port, int source_port_id, - bool connection_error) { +static void DispatchOnDisconnect(const MessageService::MessagePort& port, + int source_port_id, + bool connection_error) { port.process->Send(new ExtensionMsg_DispatchOnDisconnect( port.routing_id, source_port_id, connection_error)); } -static void DispatchOnMessage(const ExtensionMessageService::MessagePort& port, - const std::string& message, int target_port_id) { +static void DispatchOnMessage(const MessageService::MessagePort& port, + const std::string& message, + int target_port_id) { port.process->Send(new ExtensionMsg_DeliverMessage( port.routing_id, target_port_id, message)); } @@ -126,7 +129,7 @@ static content::RenderProcessHost* GetExtensionProcess( Profile* profile, const std::string& extension_id) { SiteInstance* site_instance = profile->GetExtensionProcessManager()->GetSiteInstanceForURL( - extensions::Extension::GetBaseURLFromExtensionId(extension_id)); + Extension::GetBaseURLFromExtensionId(extension_id)); if (!site_instance->HasProcess()) return NULL; @@ -134,12 +137,11 @@ static content::RenderProcessHost* GetExtensionProcess( return site_instance->GetProcess(); } -static void IncrementLazyKeepaliveCount( - ExtensionMessageService::MessagePort* port) { +static void IncrementLazyKeepaliveCount(MessageService::MessagePort* port) { Profile* profile = Profile::FromBrowserContext(port->process->GetBrowserContext()); ExtensionProcessManager* pm = - extensions::ExtensionSystem::Get(profile)->process_manager(); + ExtensionSystem::Get(profile)->process_manager(); ExtensionHost* host = pm->GetBackgroundHostForExtension(port->extension_id); if (host && host->extension()->has_lazy_background_page()) pm->IncrementLazyKeepaliveCount(host->extension()); @@ -149,12 +151,11 @@ static void IncrementLazyKeepaliveCount( port->background_host_ptr = host; } -static void DecrementLazyKeepaliveCount( - ExtensionMessageService::MessagePort* port) { +static void DecrementLazyKeepaliveCount(MessageService::MessagePort* port) { Profile* profile = Profile::FromBrowserContext(port->process->GetBrowserContext()); ExtensionProcessManager* pm = - extensions::ExtensionSystem::Get(profile)->process_manager(); + ExtensionSystem::Get(profile)->process_manager(); ExtensionHost* host = pm->GetBackgroundHostForExtension(port->extension_id); if (host && host == port->background_host_ptr) pm->DecrementLazyKeepaliveCount(host->extension()); @@ -163,7 +164,7 @@ static void DecrementLazyKeepaliveCount( } // namespace // static -void ExtensionMessageService::AllocatePortIdPair(int* port1, int* port2) { +void MessageService::AllocatePortIdPair(int* port1, int* port2) { int channel_id = g_next_channel_id.GetNext(); int port1_id = channel_id * 2; int port2_id = channel_id * 2 + 1; @@ -181,8 +182,8 @@ void ExtensionMessageService::AllocatePortIdPair(int* port1, int* port2) { *port2 = port2_id; } -ExtensionMessageService::ExtensionMessageService( - extensions::LazyBackgroundTaskQueue* queue) +MessageService::MessageService( + LazyBackgroundTaskQueue* queue) : lazy_background_task_queue_(queue) { registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_TERMINATED, content::NotificationService::AllBrowserContextsAndSources()); @@ -190,12 +191,12 @@ ExtensionMessageService::ExtensionMessageService( content::NotificationService::AllBrowserContextsAndSources()); } -ExtensionMessageService::~ExtensionMessageService() { +MessageService::~MessageService() { STLDeleteContainerPairSecondPointers(channels_.begin(), channels_.end()); channels_.clear(); } -void ExtensionMessageService::OpenChannelToExtension( +void MessageService::OpenChannelToExtension( int source_process_id, int source_routing_id, int receiver_port_id, const std::string& source_extension_id, const std::string& target_extension_id, @@ -209,10 +210,9 @@ void ExtensionMessageService::OpenChannelToExtension( // Note: we use the source's profile here. If the source is an incognito // process, we will use the incognito EPM to find the right extension process, // which depends on whether the extension uses spanning or split mode. - MessagePort receiver( - GetExtensionProcess(profile, target_extension_id), - MSG_ROUTING_CONTROL, - target_extension_id); + MessagePort receiver(GetExtensionProcess(profile, target_extension_id), + MSG_ROUTING_CONTROL, + target_extension_id); WebContents* source_contents = tab_util::GetWebContentsByID( source_process_id, source_routing_id); @@ -237,7 +237,7 @@ void ExtensionMessageService::OpenChannelToExtension( OpenChannelImpl(params); } -void ExtensionMessageService::OpenChannelToTab( +void MessageService::OpenChannelToTab( int source_process_id, int source_routing_id, int receiver_port_id, int tab_id, const std::string& extension_id, const std::string& channel_name) { @@ -281,7 +281,7 @@ void ExtensionMessageService::OpenChannelToTab( OpenChannelImpl(params); } -bool ExtensionMessageService::OpenChannelImpl(const OpenChannelParams& params) { +bool MessageService::OpenChannelImpl(const OpenChannelParams& params) { if (!params.source) return false; // Closed while in flight. @@ -322,7 +322,7 @@ bool ExtensionMessageService::OpenChannelImpl(const OpenChannelParams& params) { return true; } -void ExtensionMessageService::CloseChannel(int port_id, bool connection_error) { +void MessageService::CloseChannel(int port_id, bool connection_error) { // Note: The channel might be gone already, if the other side closed first. int channel_id = GET_CHANNEL_ID(port_id); MessageChannelMap::iterator it = channels_.find(channel_id); @@ -331,7 +331,7 @@ void ExtensionMessageService::CloseChannel(int port_id, bool connection_error) { if (pending != pending_channels_.end()) { lazy_background_task_queue_->AddPendingTask( pending->second.first, pending->second.second, - base::Bind(&ExtensionMessageService::PendingCloseChannel, + base::Bind(&MessageService::PendingCloseChannel, base::Unretained(this), port_id, connection_error)); } return; @@ -339,7 +339,7 @@ void ExtensionMessageService::CloseChannel(int port_id, bool connection_error) { CloseChannelImpl(it, port_id, connection_error, true); } -void ExtensionMessageService::CloseChannelImpl( +void MessageService::CloseChannelImpl( MessageChannelMap::iterator channel_iter, int closing_port_id, bool connection_error, bool notify_other_port) { MessageChannel* channel = channel_iter->second; @@ -360,7 +360,7 @@ void ExtensionMessageService::CloseChannelImpl( channels_.erase(channel_iter); } -void ExtensionMessageService::PostMessageFromRenderer( +void MessageService::PostMessageFromRenderer( int source_port_id, const std::string& message) { int channel_id = GET_CHANNEL_ID(source_port_id); MessageChannelMap::iterator iter = channels_.find(channel_id); @@ -371,7 +371,7 @@ void ExtensionMessageService::PostMessageFromRenderer( if (pending != pending_channels_.end()) { lazy_background_task_queue_->AddPendingTask( pending->second.first, pending->second.second, - base::Bind(&ExtensionMessageService::PendingPostMessage, + base::Bind(&MessageService::PendingPostMessage, base::Unretained(this), source_port_id, message)); } return; @@ -385,10 +385,9 @@ void ExtensionMessageService::PostMessageFromRenderer( DispatchOnMessage(port, message, dest_port_id); } -void ExtensionMessageService::Observe( - int type, - const content::NotificationSource& source, - const content::NotificationDetails& details) { +void MessageService::Observe(int type, + const content::NotificationSource& source, + const content::NotificationDetails& details) { switch (type) { case content::NOTIFICATION_RENDERER_PROCESS_TERMINATED: case content::NOTIFICATION_RENDERER_PROCESS_CLOSED: { @@ -403,8 +402,7 @@ void ExtensionMessageService::Observe( } } -void ExtensionMessageService::OnProcessClosed( - content::RenderProcessHost* process) { +void MessageService::OnProcessClosed(content::RenderProcessHost* process) { // Close any channels that share this renderer. We notify the opposite // port that his pair has closed. for (MessageChannelMap::iterator it = channels_.begin(); @@ -425,12 +423,12 @@ void ExtensionMessageService::OnProcessClosed( } } -bool ExtensionMessageService::MaybeAddPendingOpenChannelTask( +bool MessageService::MaybeAddPendingOpenChannelTask( Profile* profile, const OpenChannelParams& params) { ExtensionService* service = profile->GetExtensionService(); const std::string& extension_id = params.target_extension_id; - const extensions::Extension* extension = service->extensions()->GetByID( + const Extension* extension = service->extensions()->GetByID( extension_id); if (extension && extension->has_lazy_background_page()) { // If the extension uses spanning incognito mode, make sure we're always @@ -441,7 +439,7 @@ bool ExtensionMessageService::MaybeAddPendingOpenChannelTask( if (lazy_background_task_queue_->ShouldEnqueueTask(profile, extension)) { lazy_background_task_queue_->AddPendingTask(profile, extension_id, - base::Bind(&ExtensionMessageService::PendingOpenChannel, + base::Bind(&MessageService::PendingOpenChannel, base::Unretained(this), params, params.source->GetID())); pending_channels_[GET_CHANNEL_ID(params.receiver_port_id)] = PendingChannel(profile, extension_id); @@ -452,10 +450,9 @@ bool ExtensionMessageService::MaybeAddPendingOpenChannelTask( return false; } -void ExtensionMessageService::PendingOpenChannel( - const OpenChannelParams& params_in, - int source_process_id, - ExtensionHost* host) { +void MessageService::PendingOpenChannel(const OpenChannelParams& params_in, + int source_process_id, + ExtensionHost* host) { if (!host) return; // TODO(mpcomplete): notify source of disconnect? @@ -470,3 +467,5 @@ void ExtensionMessageService::PendingOpenChannel( params.target_extension_id); OpenChannelImpl(params); } + +} // namespace extensions diff --git a/chrome/browser/extensions/extension_message_service.h b/chrome/browser/extensions/message_service.h index 1f3728b..381f15a 100644 --- a/chrome/browser/extensions/extension_message_service.h +++ b/chrome/browser/extensions/message_service.h @@ -2,8 +2,8 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_SERVICE_H_ -#define CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_SERVICE_H_ +#ifndef CHROME_BROWSER_EXTENSIONS_MESSAGE_SERVICE_H_ +#define CHROME_BROWSER_EXTENSIONS_MESSAGE_SERVICE_H_ #include <map> #include <set> @@ -24,7 +24,6 @@ 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 @@ -47,7 +46,7 @@ class LazyBackgroundTaskQueue; // port: an IPC::Message::Process interface and an optional routing_id (in the // case that the port is a tab). The Process is usually either a // RenderProcessHost or a RenderViewHost. -class ExtensionMessageService : public content::NotificationObserver { +class MessageService : public content::NotificationObserver { public: // A messaging channel. Note that the opening port can be the same as the // receiver, if an extension background page wants to talk to its tab (for @@ -59,8 +58,8 @@ class ExtensionMessageService : public content::NotificationObserver { // NOTE: this can be called from any thread. static void AllocatePortIdPair(int* port1, int* port2); - explicit ExtensionMessageService(extensions::LazyBackgroundTaskQueue* queue); - virtual ~ExtensionMessageService(); + explicit MessageService(LazyBackgroundTaskQueue* queue); + virtual ~MessageService(); // Given an extension's ID, opens a channel between the given renderer "port" // and every listening context owned by that extension. |channel_name| is @@ -87,7 +86,7 @@ class ExtensionMessageService : public content::NotificationObserver { void PostMessageFromRenderer(int port_id, const std::string& message); private: - friend class MockExtensionMessageService; + friend class MockMessageService; struct OpenChannelParams; // A map of channel ID to its channel object. @@ -143,9 +142,11 @@ class ExtensionMessageService : public content::NotificationObserver { PendingChannelMap pending_channels_; // Weak pointer. Guaranteed to outlive this class. - extensions::LazyBackgroundTaskQueue* lazy_background_task_queue_; + LazyBackgroundTaskQueue* lazy_background_task_queue_; - DISALLOW_COPY_AND_ASSIGN(ExtensionMessageService); + DISALLOW_COPY_AND_ASSIGN(MessageService); }; -#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_MESSAGE_SERVICE_H_ +} // namespace extensions + +#endif // CHROME_BROWSER_EXTENSIONS_MESSAGE_SERVICE_H_ diff --git a/chrome/browser/extensions/test_extension_system.cc b/chrome/browser/extensions/test_extension_system.cc index 61df40d..c12984f 100644 --- a/chrome/browser/extensions/test_extension_system.cc +++ b/chrome/browser/extensions/test_extension_system.cc @@ -8,12 +8,12 @@ #include "chrome/browser/extensions/event_router.h" #include "chrome/browser/extensions/extension_devtools_manager.h" #include "chrome/browser/extensions/extension_info_map.h" -#include "chrome/browser/extensions/extension_message_service.h" #include "chrome/browser/extensions/extension_pref_value_map.h" #include "chrome/browser/extensions/extension_pref_value_map_factory.h" #include "chrome/browser/extensions/extension_process_manager.h" #include "chrome/browser/extensions/extension_service.h" #include "chrome/browser/extensions/extension_system.h" +#include "chrome/browser/extensions/message_service.h" #include "chrome/browser/extensions/state_store.h" #include "chrome/browser/extensions/user_script_master.h" #include "chrome/browser/profiles/profile.h" @@ -120,7 +120,7 @@ TestExtensionSystem::lazy_background_task_queue() { return NULL; } -ExtensionMessageService* TestExtensionSystem::message_service() { +MessageService* TestExtensionSystem::message_service() { return NULL; } diff --git a/chrome/browser/extensions/test_extension_system.h b/chrome/browser/extensions/test_extension_system.h index c20f51c..d27f3b0 100644 --- a/chrome/browser/extensions/test_extension_system.h +++ b/chrome/browser/extensions/test_extension_system.h @@ -52,7 +52,7 @@ class TestExtensionSystem : public ExtensionSystem { virtual StateStore* state_store() OVERRIDE; virtual ExtensionInfoMap* info_map() OVERRIDE; virtual LazyBackgroundTaskQueue* lazy_background_task_queue() OVERRIDE; - virtual ExtensionMessageService* message_service() OVERRIDE; + virtual MessageService* message_service() OVERRIDE; virtual EventRouter* event_router() OVERRIDE; virtual RulesRegistryService* rules_registry_service() OVERRIDE; virtual ApiResourceManager<SerialConnection>* serial_connection_manager() diff --git a/chrome/browser/extensions/user_script_master.cc b/chrome/browser/extensions/user_script_master.cc index b8b662a..4f5556e 100644 --- a/chrome/browser/extensions/user_script_master.cc +++ b/chrome/browser/extensions/user_script_master.cc @@ -21,9 +21,9 @@ #include "chrome/common/chrome_notification_types.h" #include "chrome/common/extensions/extension.h" #include "chrome/common/extensions/extension_file_util.h" -#include "chrome/common/extensions/extension_message_bundle.h" #include "chrome/common/extensions/extension_resource.h" #include "chrome/common/extensions/extension_set.h" +#include "chrome/common/extensions/message_bundle.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/render_process_host.h" @@ -196,7 +196,7 @@ static bool LoadScriptContent(UserScript::File* script_file, // Localize the content. if (localization_messages) { std::string error; - ExtensionMessageBundle::ReplaceMessagesWithExternalDictionary( + MessageBundle::ReplaceMessagesWithExternalDictionary( *localization_messages, &content, &error); if (!error.empty()) { LOG(WARNING) << "Failed to replace messages in script: " << error; @@ -239,7 +239,7 @@ SubstitutionMap* UserScriptMaster::ScriptReloader::GetLocalizationMessages( return NULL; } - return extension_file_util::LoadExtensionMessageBundleSubstitutionMap( + return extension_file_util::LoadMessageBundleSubstitutionMap( extensions_info_[extension_id].first, extension_id, extensions_info_[extension_id].second); |