diff options
author | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-24 00:22:50 +0000 |
---|---|---|
committer | willchan@chromium.org <willchan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-02-24 00:22:50 +0000 |
commit | 0651b818c7122d319954ff5bc30dff68ba8b9013 (patch) | |
tree | d18a681545594c17175a584b7d56a6ee9abd10b6 /chrome/browser/net/chrome_network_delegate.h | |
parent | 26616172ccaeae9842d7e52b556bc49e16751455 (diff) | |
download | chromium_src-0651b818c7122d319954ff5bc30dff68ba8b9013.zip chromium_src-0651b818c7122d319954ff5bc30dff68ba8b9013.tar.gz chromium_src-0651b818c7122d319954ff5bc30dff68ba8b9013.tar.bz2 |
Refactor of NetworkDelegate.
* Renames HttpNetworkDelegate to NetworkDelegate, moves to net/base/network_delegate.h. NOTE: this is a layering violation. wtc/eroman/willchan have agreed to this exception because the other solutions are less palatable.
* Move the virtuals in NetworkDelegate to the private section. Use non-virtual public interface as the network stack's interface for notifying the delegate. Add sanity checking to the implmentation in NetworkDelegate. The private virtual interface is for consumers to receive notifications.
* Remove ExtensionIOEventRouter from ChromeURLRequestContext, it is only used by the ChromeNetworkDelegate. Pass it directly to the ChromeNetworkDelegate's constructor.
* Introduce a SystemNetworkDelegate. It does nothing right now.
BUG=67232
TEST=none
Review URL: http://codereview.chromium.org/6580002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@75822 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/net/chrome_network_delegate.h')
-rw-r--r-- | chrome/browser/net/chrome_network_delegate.h | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/chrome/browser/net/chrome_network_delegate.h b/chrome/browser/net/chrome_network_delegate.h index 06c7c93..fbac036 100644 --- a/chrome/browser/net/chrome_network_delegate.h +++ b/chrome/browser/net/chrome_network_delegate.h @@ -7,25 +7,26 @@ #pragma once #include "base/basictypes.h" -#include "net/http/http_network_delegate.h" +#include "net/base/network_delegate.h" + +class ExtensionIOEventRouter; // ChromeNetworkDelegate is the central point from within the chrome code to // add hooks into the network stack. -class ChromeNetworkDelegate : public net::HttpNetworkDelegate { +class ChromeNetworkDelegate : public net::NetworkDelegate { public: - ChromeNetworkDelegate(); + explicit ChromeNetworkDelegate( + ExtensionIOEventRouter* extension_io_event_router); ~ChromeNetworkDelegate(); - // net::HttpNetworkDelegate methods: + private: + // NetworkDelegate methods: virtual void OnBeforeURLRequest(net::URLRequest* request); virtual void OnSendHttpRequest(net::HttpRequestHeaders* headers); virtual void OnResponseStarted(net::URLRequest* request); virtual void OnReadCompleted(net::URLRequest* request, int bytes_read); - // TODO(willchan): Add functions for consumers to register ways to - // access/modify the request. - - private: + ExtensionIOEventRouter* const extension_io_event_router_; DISALLOW_COPY_AND_ASSIGN(ChromeNetworkDelegate); }; |