Implemented of base functionality of chrome.experimental.webRequest.onBeforeRedirect

BUG=60101
TEST=execute browser tests

Review URL: http://codereview.chromium.org/6882043

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82317 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/net/base/network_delegate.h b/net/base/network_delegate.h
index 2816248..b642282 100644
--- a/net/base/network_delegate.h
+++ b/net/base/network_delegate.h
@@ -43,6 +43,8 @@
                               CompletionCallback* callback,
                               HttpRequestHeaders* headers);
   void NotifyRequestSent(uint64 request_id, const HostPortPair& socket_address);
+  void NotifyBeforeRedirect(URLRequest* request,
+                            const GURL& new_location);
   void NotifyResponseStarted(URLRequest* request);
   void NotifyReadCompleted(URLRequest* request, int bytes_read);
   void NotifyURLRequestDestroyed(URLRequest* request);
@@ -82,6 +84,10 @@
   virtual void OnRequestSent(uint64 request_id,
                              const HostPortPair& socket_address) = 0;
 
+  // Called right after a redirect response code was received.
+  virtual void OnBeforeRedirect(URLRequest* request,
+                                const GURL& new_location) = 0;
+
   // This corresponds to URLRequestDelegate::OnResponseStarted.
   virtual void OnResponseStarted(URLRequest* request) = 0;