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

Side by Side Diff: chrome/browser/extensions/extension_protocols.cc

Issue 12578008: Move CrxFile, FileReader, ExtensionResource to src/extensions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 7 years, 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/extension_protocols.h" 5 #include "chrome/browser/extensions/extension_protocols.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
11 #include "base/logging.h" 11 #include "base/logging.h"
12 #include "base/memory/weak_ptr.h" 12 #include "base/memory/weak_ptr.h"
13 #include "base/message_loop.h" 13 #include "base/message_loop.h"
14 #include "base/path_service.h" 14 #include "base/path_service.h"
15 #include "base/string_util.h" 15 #include "base/string_util.h"
16 #include "base/stringprintf.h" 16 #include "base/stringprintf.h"
17 #include "base/threading/thread_restrictions.h" 17 #include "base/threading/thread_restrictions.h"
18 #include "base/threading/worker_pool.h" 18 #include "base/threading/worker_pool.h"
19 #include "build/build_config.h" 19 #include "build/build_config.h"
20 #include "chrome/browser/extensions/extension_info_map.h" 20 #include "chrome/browser/extensions/extension_info_map.h"
21 #include "chrome/browser/extensions/image_loader.h" 21 #include "chrome/browser/extensions/image_loader.h"
22 #include "chrome/common/chrome_paths.h" 22 #include "chrome/common/chrome_paths.h"
23 #include "chrome/common/extensions/api/icons/icons_handler.h" 23 #include "chrome/common/extensions/api/icons/icons_handler.h"
24 #include "chrome/common/extensions/background_info.h" 24 #include "chrome/common/extensions/background_info.h"
25 #include "chrome/common/extensions/extension.h" 25 #include "chrome/common/extensions/extension.h"
26 #include "chrome/common/extensions/extension_file_util.h" 26 #include "chrome/common/extensions/extension_file_util.h"
27 #include "chrome/common/extensions/extension_resource.h"
28 #include "chrome/common/extensions/web_accessible_resources_handler.h" 27 #include "chrome/common/extensions/web_accessible_resources_handler.h"
29 #include "chrome/common/url_constants.h" 28 #include "chrome/common/url_constants.h"
30 #include "content/public/browser/resource_request_info.h" 29 #include "content/public/browser/resource_request_info.h"
31 #include "extensions/common/constants.h" 30 #include "extensions/common/constants.h"
31 #include "extensions/common/extension_resource.h"
32 #include "googleurl/src/url_util.h" 32 #include "googleurl/src/url_util.h"
33 #include "grit/component_extension_resources_map.h" 33 #include "grit/component_extension_resources_map.h"
34 #include "net/base/mime_util.h" 34 #include "net/base/mime_util.h"
35 #include "net/base/net_errors.h" 35 #include "net/base/net_errors.h"
36 #include "net/http/http_response_headers.h" 36 #include "net/http/http_response_headers.h"
37 #include "net/http/http_response_info.h" 37 #include "net/http/http_response_info.h"
38 #include "net/url_request/url_request_error_job.h" 38 #include "net/url_request/url_request_error_job.h"
39 #include "net/url_request/url_request_file_job.h" 39 #include "net/url_request/url_request_file_job.h"
40 #include "net/url_request/url_request_simple_job.h" 40 #include "net/url_request/url_request_simple_job.h"
41 #include "ui/base/resource/resource_bundle.h" 41 #include "ui/base/resource/resource_bundle.h"
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 *info = response_info_; 184 *info = response_info_;
185 } 185 }
186 186
187 private: 187 private:
188 virtual ~GeneratedBackgroundPageJob() {} 188 virtual ~GeneratedBackgroundPageJob() {}
189 189
190 scoped_refptr<const Extension> extension_; 190 scoped_refptr<const Extension> extension_;
191 net::HttpResponseInfo response_info_; 191 net::HttpResponseInfo response_info_;
192 }; 192 };
193 193
194 void ReadResourceFilePath(const ExtensionResource& resource, 194 void ReadResourceFilePath(const extensions::ExtensionResource& resource,
195 base::FilePath* file_path) { 195 base::FilePath* file_path) {
196 *file_path = resource.GetFilePath(); 196 *file_path = resource.GetFilePath();
197 } 197 }
198 198
199 class URLRequestExtensionJob : public net::URLRequestFileJob { 199 class URLRequestExtensionJob : public net::URLRequestFileJob {
200 public: 200 public:
201 URLRequestExtensionJob(net::URLRequest* request, 201 URLRequestExtensionJob(net::URLRequest* request,
202 net::NetworkDelegate* network_delegate, 202 net::NetworkDelegate* network_delegate,
203 const std::string& extension_id, 203 const std::string& extension_id,
204 const base::FilePath& directory_path, 204 const base::FilePath& directory_path,
(...skipping 29 matching lines...) Expand all
234 234
235 private: 235 private:
236 virtual ~URLRequestExtensionJob() {} 236 virtual ~URLRequestExtensionJob() {}
237 237
238 void OnFilePathRead(base::FilePath* read_file_path) { 238 void OnFilePathRead(base::FilePath* read_file_path) {
239 file_path_ = *read_file_path; 239 file_path_ = *read_file_path;
240 URLRequestFileJob::Start(); 240 URLRequestFileJob::Start();
241 } 241 }
242 242
243 net::HttpResponseInfo response_info_; 243 net::HttpResponseInfo response_info_;
244 ExtensionResource resource_; 244 extensions::ExtensionResource resource_;
245 base::WeakPtrFactory<URLRequestExtensionJob> weak_factory_; 245 base::WeakPtrFactory<URLRequestExtensionJob> weak_factory_;
246 }; 246 };
247 247
248 bool ExtensionCanLoadInIncognito(const ResourceRequestInfo* info, 248 bool ExtensionCanLoadInIncognito(const ResourceRequestInfo* info,
249 const std::string& extension_id, 249 const std::string& extension_id,
250 ExtensionInfoMap* extension_info_map) { 250 ExtensionInfoMap* extension_info_map) {
251 if (!extension_info_map->IsIncognitoEnabled(extension_id)) 251 if (!extension_info_map->IsIncognitoEnabled(extension_id))
252 return false; 252 return false;
253 253
254 // Only allow incognito toplevel navigations to extension resources in 254 // Only allow incognito toplevel navigations to extension resources in
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
406 send_cors_header); 406 send_cors_header);
407 } 407 }
408 408
409 } // namespace 409 } // namespace
410 410
411 net::URLRequestJobFactory::ProtocolHandler* CreateExtensionProtocolHandler( 411 net::URLRequestJobFactory::ProtocolHandler* CreateExtensionProtocolHandler(
412 bool is_incognito, 412 bool is_incognito,
413 ExtensionInfoMap* extension_info_map) { 413 ExtensionInfoMap* extension_info_map) {
414 return new ExtensionProtocolHandler(is_incognito, extension_info_map); 414 return new ExtensionProtocolHandler(is_incognito, extension_info_map);
415 } 415 }
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_install_prompt.cc ('k') | chrome/browser/extensions/extension_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698