summaryrefslogtreecommitdiffstats
path: root/net/url_request
diff options
context:
space:
mode:
authormpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-01 21:38:16 +0000
committermpcomplete@chromium.org <mpcomplete@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-01 21:38:16 +0000
commitd05ef99c71c3d4db779be737102807cbab88ca45 (patch)
treeb64aa3b5117ecce666372bbc77b6558984194bfa /net/url_request
parent1e1a3ce6a6e266ce93b78fa3c0534aec3db3e2c3 (diff)
downloadchromium_src-d05ef99c71c3d4db779be737102807cbab88ca45.zip
chromium_src-d05ef99c71c3d4db779be737102807cbab88ca45.tar.gz
chromium_src-d05ef99c71c3d4db779be737102807cbab88ca45.tar.bz2
Unreverting: First steps towards webRequest extension API.
Only an asynchronous version of onBeforeRequest is implement, with limited data being passed. Original CL: http://src.chromium.org/viewvc/chrome?view=rev&revision=73196 BUG=60101 TEST=no Review URL: http://codereview.chromium.org/6246032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@73344 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/url_request')
-rw-r--r--net/url_request/url_request.cc6
-rw-r--r--net/url_request/url_request_context.h5
2 files changed, 11 insertions, 0 deletions
diff --git a/net/url_request/url_request.cc b/net/url_request/url_request.cc
index 300c9c6..c2d0f4f 100644
--- a/net/url_request/url_request.cc
+++ b/net/url_request/url_request.cc
@@ -13,6 +13,7 @@
#include "net/base/net_log.h"
#include "net/base/ssl_cert_request_info.h"
#include "net/base/upload_data.h"
+#include "net/http/http_network_delegate.h"
#include "net/http/http_response_headers.h"
#include "net/http/http_util.h"
#include "net/url_request/url_request_context.h"
@@ -346,6 +347,11 @@ void URLRequest::StartJob(URLRequestJob* job) {
DCHECK(!is_pending_);
DCHECK(!job_);
+ // TODO(mpcomplete): pass in request ID?
+ // TODO(mpcomplete): allow delegate to potentially delay/cancel request.
+ if (context_ && context_->network_delegate())
+ context_->network_delegate()->OnBeforeURLRequest(this);
+
net_log_.BeginEvent(
net::NetLog::TYPE_URL_REQUEST_START_JOB,
make_scoped_refptr(new URLRequestStartEventParameters(
diff --git a/net/url_request/url_request_context.h b/net/url_request/url_request_context.h
index 2c737ca..18315dc 100644
--- a/net/url_request/url_request_context.h
+++ b/net/url_request/url_request_context.h
@@ -115,6 +115,11 @@ class URLRequestContext
return ftp_transaction_factory_;
}
+ void set_network_delegate(HttpNetworkDelegate* network_delegate) {
+ network_delegate_ = network_delegate;
+ }
+ HttpNetworkDelegate* network_delegate() { return network_delegate_; }
+
// Gets the cookie store for this context (may be null, in which case
// cookies are not stored).
CookieStore* cookie_store() { return cookie_store_.get(); }