Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(311)

Unified Diff: chrome/browser/extensions/extension_protocols.cc

Issue 10855209: Refactoring: ProtocolHandler::MaybeCreateJob takes NetworkDelegate as argument (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_protocols.cc
diff --git a/chrome/browser/extensions/extension_protocols.cc b/chrome/browser/extensions/extension_protocols.cc
index ceada7ec823094faed159fb928386f10f14822e3..f25233a3615e527e6408983d3404516cd3838053 100644
--- a/chrome/browser/extensions/extension_protocols.cc
+++ b/chrome/browser/extensions/extension_protocols.cc
@@ -31,6 +31,8 @@
#include "net/base/net_errors.h"
#include "net/http/http_response_headers.h"
#include "net/http/http_response_info.h"
+#include "net/url_request/url_request.h"
+#include "net/url_request/url_request_context.h"
erikwright (departed) 2012/08/21 02:05:01 why add this?
shalev 2012/08/22 20:34:10 Done.
#include "net/url_request/url_request_error_job.h"
#include "net/url_request/url_request_file_job.h"
#include "net/url_request/url_request_simple_job.h"
@@ -68,10 +70,13 @@ void ReadMimeTypeFromFile(const FilePath& filename,
class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
public:
- URLRequestResourceBundleJob(
- net::URLRequest* request, const FilePath& filename, int resource_id,
- const std::string& content_security_policy, bool send_cors_header)
- : net::URLRequestSimpleJob(request),
+ URLRequestResourceBundleJob(net::URLRequest* request,
+ net::NetworkDelegate* network_delegate,
+ const FilePath& filename,
+ int resource_id,
+ const std::string& content_security_policy,
+ bool send_cors_header)
+ : net::URLRequestSimpleJob(request, network_delegate),
filename_(filename),
resource_id_(resource_id),
weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
@@ -145,9 +150,10 @@ class URLRequestResourceBundleJob : public net::URLRequestSimpleJob {
class GeneratedBackgroundPageJob : public net::URLRequestSimpleJob {
public:
GeneratedBackgroundPageJob(net::URLRequest* request,
+ net::NetworkDelegate* network_delegate,
const scoped_refptr<const Extension> extension,
const std::string& content_security_policy)
- : net::URLRequestSimpleJob(request),
+ : net::URLRequestSimpleJob(request, network_delegate),
extension_(extension) {
const bool send_cors_headers = false;
response_info_.headers = BuildHttpHeaders(content_security_policy,
@@ -191,11 +197,12 @@ void ReadResourceFilePath(const ExtensionResource& resource,
class URLRequestExtensionJob : public net::URLRequestFileJob {
public:
URLRequestExtensionJob(net::URLRequest* request,
+ net::NetworkDelegate* network_delegate,
const std::string& extension_id,
const FilePath& directory_path,
const std::string& content_security_policy,
bool send_cors_header)
- : net::URLRequestFileJob(request, FilePath()),
+ : net::URLRequestFileJob(request, network_delegate, FilePath()),
// TODO(tc): Move all of these files into resources.pak so we don't break
// when updating on Linux.
resource_(extension_id, directory_path,
@@ -303,7 +310,8 @@ class ExtensionProtocolHandler
virtual ~ExtensionProtocolHandler() {}
virtual net::URLRequestJob* MaybeCreateJob(
- net::URLRequest* request) const OVERRIDE;
+ net::URLRequest* request,
+ net::NetworkDelegate* network_delegate) const OVERRIDE;
private:
const bool is_incognito_;
@@ -313,11 +321,13 @@ class ExtensionProtocolHandler
// Creates URLRequestJobs for extension:// URLs.
net::URLRequestJob*
-ExtensionProtocolHandler::MaybeCreateJob(net::URLRequest* request) const {
+ExtensionProtocolHandler::MaybeCreateJob(
+ net::URLRequest* request, net::NetworkDelegate* network_delegate) const {
// TODO(mpcomplete): better error code.
if (!AllowExtensionResourceLoad(
request, is_incognito_, extension_info_map_)) {
- return new net::URLRequestErrorJob(request, net::ERR_ADDRESS_UNREACHABLE);
+ return new net::URLRequestErrorJob(
+ request, network_delegate, net::ERR_ADDRESS_UNREACHABLE);
}
// chrome-extension://extension-id/resource/path.js
@@ -354,7 +364,7 @@ ExtensionProtocolHandler::MaybeCreateJob(net::URLRequest* request) const {
if (path.size() > 1 &&
path.substr(1) == extension_filenames::kGeneratedBackgroundPageFilename) {
return new GeneratedBackgroundPageJob(
- request, extension, content_security_policy);
+ request, network_delegate, extension, content_security_policy);
}
FilePath resources_path;
@@ -379,15 +389,23 @@ ExtensionProtocolHandler::MaybeCreateJob(net::URLRequest* request) const {
FilePath().AppendASCII(kComponentExtensionResources[i].name);
bm_resource_path = bm_resource_path.NormalizePathSeparators();
if (relative_path == bm_resource_path) {
- return new URLRequestResourceBundleJob(request, relative_path,
- kComponentExtensionResources[i].value, content_security_policy,
+ return new URLRequestResourceBundleJob(
+ request,
+ network_delegate,
+ relative_path,
+ kComponentExtensionResources[i].value,
+ content_security_policy,
send_cors_header);
}
}
}
- return new URLRequestExtensionJob(request, extension_id, directory_path,
- content_security_policy, send_cors_header);
+ return new URLRequestExtensionJob(request,
+ network_delegate,
+ extension_id,
+ directory_path,
+ content_security_policy,
+ send_cors_header);
}
} // namespace
« no previous file with comments | « chrome/browser/extensions/autoupdate_interceptor.cc ('k') | chrome/browser/extensions/extension_resource_protocols.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698