Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(545)

Side by Side Diff: extensions/browser/event_router.h

Issue 664933004: Standardize usage of virtual/override/final in extensions/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 EXTENSIONS_BROWSER_EVENT_ROUTER_H_ 5 #ifndef EXTENSIONS_BROWSER_EVENT_ROUTER_H_
6 #define EXTENSIONS_BROWSER_EVENT_ROUTER_H_ 6 #define EXTENSIONS_BROWSER_EVENT_ROUTER_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 const std::string& extension_id, 87 const std::string& extension_id,
88 const std::string& event_name, 88 const std::string& event_name,
89 scoped_ptr<base::ListValue> event_args, 89 scoped_ptr<base::ListValue> event_args,
90 UserGestureState user_gesture, 90 UserGestureState user_gesture,
91 const EventFilteringInfo& info); 91 const EventFilteringInfo& info);
92 92
93 // An EventRouter is shared between |browser_context| and its associated 93 // An EventRouter is shared between |browser_context| and its associated
94 // incognito context. |extension_prefs| may be NULL in tests. 94 // incognito context. |extension_prefs| may be NULL in tests.
95 EventRouter(content::BrowserContext* browser_context, 95 EventRouter(content::BrowserContext* browser_context,
96 ExtensionPrefs* extension_prefs); 96 ExtensionPrefs* extension_prefs);
97 virtual ~EventRouter(); 97 ~EventRouter() override;
98 98
99 // Add or remove an extension as an event listener for |event_name|. 99 // Add or remove an extension as an event listener for |event_name|.
100 // 100 //
101 // Note that multiple extensions can share a process due to process 101 // Note that multiple extensions can share a process due to process
102 // collapsing. Also, a single extension can have 2 processes if it is a split 102 // collapsing. Also, a single extension can have 2 processes if it is a split
103 // mode extension. 103 // mode extension.
104 void AddEventListener(const std::string& event_name, 104 void AddEventListener(const std::string& event_name,
105 content::RenderProcessHost* process, 105 content::RenderProcessHost* process,
106 const std::string& extension_id); 106 const std::string& extension_id);
107 void RemoveEventListener(const std::string& event_name, 107 void RemoveEventListener(const std::string& event_name,
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 // TODO(gdk): Document this. 201 // TODO(gdk): Document this.
202 static void DispatchExtensionMessage( 202 static void DispatchExtensionMessage(
203 IPC::Sender* ipc_sender, 203 IPC::Sender* ipc_sender,
204 void* browser_context_id, 204 void* browser_context_id,
205 const std::string& extension_id, 205 const std::string& extension_id,
206 const std::string& event_name, 206 const std::string& event_name,
207 base::ListValue* event_args, 207 base::ListValue* event_args,
208 UserGestureState user_gesture, 208 UserGestureState user_gesture,
209 const extensions::EventFilteringInfo& info); 209 const extensions::EventFilteringInfo& info);
210 210
211 virtual void Observe(int type, 211 void Observe(int type,
212 const content::NotificationSource& source, 212 const content::NotificationSource& source,
213 const content::NotificationDetails& details) override; 213 const content::NotificationDetails& details) override;
214 // ExtensionRegistryObserver implementation. 214 // ExtensionRegistryObserver implementation.
215 virtual void OnExtensionLoaded(content::BrowserContext* browser_context, 215 void OnExtensionLoaded(content::BrowserContext* browser_context,
216 const Extension* extension) override; 216 const Extension* extension) override;
217 virtual void OnExtensionUnloaded( 217 void OnExtensionUnloaded(content::BrowserContext* browser_context,
218 content::BrowserContext* browser_context, 218 const Extension* extension,
219 const Extension* extension, 219 UnloadedExtensionInfo::Reason reason) override;
220 UnloadedExtensionInfo::Reason reason) override;
221 220
222 // Returns true if the given listener map contains a event listeners for 221 // Returns true if the given listener map contains a event listeners for
223 // the given event. If |extension_id| is non-empty, we also check that that 222 // the given event. If |extension_id| is non-empty, we also check that that
224 // extension is one of the listeners. 223 // extension is one of the listeners.
225 bool HasEventListenerImpl(const ListenerMap& listeners, 224 bool HasEventListenerImpl(const ListenerMap& listeners,
226 const std::string& extension_id, 225 const std::string& extension_id,
227 const std::string& event_name); 226 const std::string& event_name);
228 227
229 // Shared by DispatchEvent*. If |restrict_to_extension_id| is empty, the 228 // Shared by DispatchEvent*. If |restrict_to_extension_id| is empty, the
230 // event is broadcast. 229 // event is broadcast.
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 284
286 // static 285 // static
287 static void IncrementInFlightEventsOnUI( 286 static void IncrementInFlightEventsOnUI(
288 void* browser_context_id, 287 void* browser_context_id,
289 const std::string& extension_id); 288 const std::string& extension_id);
290 289
291 void DispatchPendingEvent(const linked_ptr<Event>& event, 290 void DispatchPendingEvent(const linked_ptr<Event>& event,
292 ExtensionHost* host); 291 ExtensionHost* host);
293 292
294 // Implementation of EventListenerMap::Delegate. 293 // Implementation of EventListenerMap::Delegate.
295 virtual void OnListenerAdded(const EventListener* listener) override; 294 void OnListenerAdded(const EventListener* listener) override;
296 virtual void OnListenerRemoved(const EventListener* listener) override; 295 void OnListenerRemoved(const EventListener* listener) override;
297 296
298 content::BrowserContext* browser_context_; 297 content::BrowserContext* browser_context_;
299 298
300 // The ExtensionPrefs associated with |browser_context_|. May be NULL in 299 // The ExtensionPrefs associated with |browser_context_|. May be NULL in
301 // tests. 300 // tests.
302 ExtensionPrefs* extension_prefs_; 301 ExtensionPrefs* extension_prefs_;
303 302
304 content::NotificationRegistrar registrar_; 303 content::NotificationRegistrar registrar_;
305 304
306 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver> 305 ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver>
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 const std::string event_name; 381 const std::string event_name;
383 382
384 const std::string extension_id; 383 const std::string extension_id;
385 const GURL listener_url; 384 const GURL listener_url;
386 content::BrowserContext* browser_context; 385 content::BrowserContext* browser_context;
387 }; 386 };
388 387
389 } // namespace extensions 388 } // namespace extensions
390 389
391 #endif // EXTENSIONS_BROWSER_EVENT_ROUTER_H_ 390 #endif // EXTENSIONS_BROWSER_EVENT_ROUTER_H_
OLDNEW
« no previous file with comments | « extensions/browser/event_listener_map_unittest.cc ('k') | extensions/browser/event_router_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698