summaryrefslogtreecommitdiffstats
path: root/chrome/browser/automation/url_request_automation_job.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/automation/url_request_automation_job.h')
-rw-r--r--chrome/browser/automation/url_request_automation_job.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/chrome/browser/automation/url_request_automation_job.h b/chrome/browser/automation/url_request_automation_job.h
index ff20c15..d4ed0f0 100644
--- a/chrome/browser/automation/url_request_automation_job.h
+++ b/chrome/browser/automation/url_request_automation_job.h
@@ -8,6 +8,7 @@
#include "chrome/common/ref_counted_util.h"
#include "net/http/http_response_headers.h"
+#include "net/url_request/url_request.h"
#include "net/url_request/url_request_job.h"
class AutomationResourceMessageFilter;
@@ -24,8 +25,10 @@ class URLRequestAutomationJob : public URLRequestJob {
URLRequestAutomationJob(
URLRequest* request, int tab, AutomationResourceMessageFilter* filter);
- // Register an interceptor for URL requests.
- static bool InitializeInterceptor();
+ // Register our factory for HTTP/HTTPs requests.
+ static bool EnsureProtocolFactoryRegistered();
+
+ static URLRequest::ProtocolFactory Factory;
// URLRequestJob methods.
virtual void Start();
@@ -75,6 +78,12 @@ class URLRequestAutomationJob : public URLRequestJob {
static int instance_count_;
+ static bool is_protocol_factory_registered_;
+ // The previous HTTP/HTTPs protocol factories. We pass unhandled
+ // requests off to these factories
+ static URLRequest::ProtocolFactory* old_http_factory_;
+ static URLRequest::ProtocolFactory* old_https_factory_;
+
DISALLOW_COPY_AND_ASSIGN(URLRequestAutomationJob);
};