Make the ChromeNetworkDelegate use the ExtensionEventRouterForwarder
BUG=73903
TEST=tests for proxy and webrequest API should still work
Review URL: http://codereview.chromium.org/6598002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76372 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/io_thread.h b/chrome/browser/io_thread.h
index d0c58de..2352225c 100644
--- a/chrome/browser/io_thread.h
+++ b/chrome/browser/io_thread.h
@@ -17,6 +17,7 @@
class ChromeNetLog;
class ChromeURLRequestContextGetter;
+class ExtensionEventRouterForwarder;
class ListValue;
class PrefService;
@@ -57,10 +58,14 @@
proxy_script_fetcher_http_transaction_factory;
scoped_ptr<net::URLSecurityManager> url_security_manager;
scoped_refptr<net::URLRequestContext> proxy_script_fetcher_context;
+ scoped_refptr<ExtensionEventRouterForwarder>
+ extension_event_router_forwarder;
};
// |net_log| must either outlive the IOThread or be NULL.
- IOThread(PrefService* local_state, ChromeNetLog* net_log);
+ IOThread(PrefService* local_state,
+ ChromeNetLog* net_log,
+ ExtensionEventRouterForwarder* extension_event_router_forwarder);
virtual ~IOThread();
@@ -134,6 +139,10 @@
// threads during shutdown, but is used most frequently on the IOThread.
ChromeNetLog* net_log_;
+ // The ExtensionEventRouterForwarder allows for sending events to extensions
+ // from the IOThread.
+ ExtensionEventRouterForwarder* extension_event_router_forwarder_;
+
// These member variables are basically global, but their lifetimes are tied
// to the IOThread. IOThread owns them all, despite not using scoped_ptr.
// This is because the destructor of IOThread runs on the wrong thread. All