summaryrefslogtreecommitdiffstats
path: root/net/url_request/url_request_job_manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'net/url_request/url_request_job_manager.h')
-rw-r--r--net/url_request/url_request_job_manager.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/url_request/url_request_job_manager.h b/net/url_request/url_request_job_manager.h
index 2dfbe13..9930e17 100644
--- a/net/url_request/url_request_job_manager.h
+++ b/net/url_request/url_request_job_manager.h
@@ -6,6 +6,7 @@
#define NET_URL_REQUEST_URL_REQUEST_JOB_MANAGER_H__
#include <map>
+#include <vector>
#include "base/lock.h"
#include "base/platform_thread.h"
@@ -31,6 +32,17 @@ class URLRequestJobManager {
// returning a job unless we are--in the extreme case--out of memory.
URLRequestJob* CreateJob(URLRequest* request) const;
+ // Allows interceptors to hijack the request after examining the new location
+ // of a redirect. Returns NULL if no interceptor intervenes.
+ URLRequestJob* MaybeInterceptRedirect(URLRequest* request,
+ const GURL& location) const;
+
+ // Allows interceptors to hijack the request after examining the response
+ // status and headers. This is also called when there is no server response
+ // at all to allow interception of failed requests due to network errors.
+ // Returns NULL if no interceptor intervenes.
+ URLRequestJob* MaybeInterceptResponse(URLRequest* request) const;
+
// Returns true if there is a protocol factory registered for the given
// scheme. Note: also returns true if there is a built-in handler for the
// given scheme.