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

Side by Side Diff: content/browser/renderer_host/resource_dispatcher_host.cc

Issue 9296012: Hooked up NetLog to DownloadItem, DownloadFile, and FileStream. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed event type name for Download to refer to URL Request Created 8 years, 10 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 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc e-loading
6 6
7 #include "content/browser/renderer_host/resource_dispatcher_host.h" 7 #include "content/browser/renderer_host/resource_dispatcher_host.h"
8 8
9 #include <set> 9 #include <set>
10 #include <vector> 10 #include <vector>
11 11
12 #include "base/bind.h" 12 #include "base/bind.h"
13 #include "base/bind_helpers.h" 13 #include "base/bind_helpers.h"
14 #include "base/command_line.h" 14 #include "base/command_line.h"
15 #include "base/compiler_specific.h" 15 #include "base/compiler_specific.h"
16 #include "base/debug/alias.h" 16 #include "base/debug/alias.h"
17 #include "base/logging.h" 17 #include "base/logging.h"
18 #include "base/memory/scoped_ptr.h" 18 #include "base/memory/scoped_ptr.h"
19 #include "base/message_loop.h" 19 #include "base/message_loop.h"
20 #include "base/metrics/histogram.h" 20 #include "base/metrics/histogram.h"
21 #include "base/shared_memory.h" 21 #include "base/shared_memory.h"
22 #include "base/stl_util.h" 22 #include "base/stl_util.h"
23 #include "base/third_party/dynamic_annotations/dynamic_annotations.h" 23 #include "base/third_party/dynamic_annotations/dynamic_annotations.h"
24 #include "content/browser/appcache/chrome_appcache_service.h" 24 #include "content/browser/appcache/chrome_appcache_service.h"
25 #include "content/browser/cert_store.h" 25 #include "content/browser/cert_store.h"
26 #include "content/browser/child_process_security_policy.h" 26 #include "content/browser/child_process_security_policy.h"
27 #include "content/browser/chrome_blob_storage_context.h" 27 #include "content/browser/chrome_blob_storage_context.h"
28 #include "content/browser/cross_site_request_manager.h" 28 #include "content/browser/cross_site_request_manager.h"
29 #include "content/browser/download/download_file_manager.h" 29 #include "content/browser/download/download_file_manager.h"
30 #include "content/browser/download/download_net_log_parameters.h"
30 #include "content/browser/download/download_resource_handler.h" 31 #include "content/browser/download/download_resource_handler.h"
31 #include "content/browser/download/save_file_manager.h" 32 #include "content/browser/download/save_file_manager.h"
32 #include "content/browser/download/save_file_resource_handler.h" 33 #include "content/browser/download/save_file_resource_handler.h"
33 #include "content/browser/plugin_service_impl.h" 34 #include "content/browser/plugin_service_impl.h"
34 #include "content/browser/renderer_host/async_resource_handler.h" 35 #include "content/browser/renderer_host/async_resource_handler.h"
35 #include "content/browser/renderer_host/buffered_resource_handler.h" 36 #include "content/browser/renderer_host/buffered_resource_handler.h"
36 #include "content/browser/renderer_host/cross_site_resource_handler.h" 37 #include "content/browser/renderer_host/cross_site_resource_handler.h"
37 #include "content/browser/renderer_host/doomed_resource_handler.h" 38 #include "content/browser/renderer_host/doomed_resource_handler.h"
38 #include "content/browser/renderer_host/redirect_to_file_resource_handler.h" 39 #include "content/browser/renderer_host/redirect_to_file_resource_handler.h"
39 #include "content/browser/renderer_host/render_view_host.h" 40 #include "content/browser/renderer_host/render_view_host.h"
(...skipping 18 matching lines...) Expand all
58 #include "content/public/browser/resource_dispatcher_host_login_delegate.h" 59 #include "content/public/browser/resource_dispatcher_host_login_delegate.h"
59 #include "content/public/common/content_switches.h" 60 #include "content/public/common/content_switches.h"
60 #include "content/public/common/process_type.h" 61 #include "content/public/common/process_type.h"
61 #include "content/public/common/url_constants.h" 62 #include "content/public/common/url_constants.h"
62 #include "net/base/auth.h" 63 #include "net/base/auth.h"
63 #include "net/base/cert_status_flags.h" 64 #include "net/base/cert_status_flags.h"
64 #include "net/base/cookie_monster.h" 65 #include "net/base/cookie_monster.h"
65 #include "net/base/load_flags.h" 66 #include "net/base/load_flags.h"
66 #include "net/base/mime_util.h" 67 #include "net/base/mime_util.h"
67 #include "net/base/net_errors.h" 68 #include "net/base/net_errors.h"
69 #include "net/base/net_log.h"
68 #include "net/base/registry_controlled_domain.h" 70 #include "net/base/registry_controlled_domain.h"
69 #include "net/base/request_priority.h" 71 #include "net/base/request_priority.h"
70 #include "net/base/ssl_cert_request_info.h" 72 #include "net/base/ssl_cert_request_info.h"
71 #include "net/base/upload_data.h" 73 #include "net/base/upload_data.h"
72 #include "net/http/http_cache.h" 74 #include "net/http/http_cache.h"
73 #include "net/http/http_response_headers.h" 75 #include "net/http/http_response_headers.h"
74 #include "net/http/http_response_info.h" 76 #include "net/http/http_response_info.h"
75 #include "net/http/http_transaction_factory.h" 77 #include "net/http/http_transaction_factory.h"
76 #include "net/url_request/url_request.h" 78 #include "net/url_request/url_request.h"
77 #include "net/url_request/url_request_context.h" 79 #include "net/url_request/url_request_context.h"
(...skipping 823 matching lines...) Expand 10 before | Expand all | Expand 10 after
901 // Check if the renderer is permitted to request the requested URL. 903 // Check if the renderer is permitted to request the requested URL.
902 if (!ChildProcessSecurityPolicy::GetInstance()-> 904 if (!ChildProcessSecurityPolicy::GetInstance()->
903 CanRequestURL(child_id, url)) { 905 CanRequestURL(child_id, url)) {
904 VLOG(1) << "Denied unauthorized download request for " 906 VLOG(1) << "Denied unauthorized download request for "
905 << url.possibly_invalid_spec(); 907 << url.possibly_invalid_spec();
906 return net::ERR_ACCESS_DENIED; 908 return net::ERR_ACCESS_DENIED;
907 } 909 }
908 910
909 request_id_--; 911 request_id_--;
910 912
913 net::BoundNetLog bound_net_log =
914 net::BoundNetLog::Make(request->net_log().net_log(),
915 net::NetLog::SOURCE_DOWNLOAD);
916
917 bound_net_log.AddEvent(
918 net::NetLog::TYPE_DOWNLOAD_URL_REQUEST,
919 make_scoped_refptr(new net::NetLogSourceParameter(
920 "source_dependency",
921 request->net_log().source())));
922
923 request->net_log().AddEvent(
924 net::NetLog::TYPE_DOWNLOAD_STARTED,
925 make_scoped_refptr(new net::NetLogSourceParameter(
926 "source_dependency",
927 bound_net_log.source())));
928
911 scoped_refptr<ResourceHandler> handler( 929 scoped_refptr<ResourceHandler> handler(
912 new DownloadResourceHandler(this, 930 new DownloadResourceHandler(this,
913 child_id, 931 child_id,
914 route_id, 932 route_id,
915 request_id_, 933 request_id_,
916 url, 934 url,
935 bound_net_log,
917 download_file_manager_.get(), 936 download_file_manager_.get(),
918 request.get(), 937 request.get(),
919 started_cb, 938 started_cb,
920 save_info)); 939 save_info));
921 940
922 if (delegate_) { 941 if (delegate_) {
923 handler = delegate_->DownloadStarting( 942 handler = delegate_->DownloadStarting(
924 handler, context, request.get(), child_id, route_id, request_id_, true); 943 handler, context, request.get(), child_id, route_id, request_id_, true);
925 } 944 }
926 945
(...skipping 1341 matching lines...) Expand 10 before | Expand all | Expand 10 after
2268 scoped_refptr<ResourceHandler> transferred_resource_handler( 2287 scoped_refptr<ResourceHandler> transferred_resource_handler(
2269 new DoomedResourceHandler(info->resource_handler())); 2288 new DoomedResourceHandler(info->resource_handler()));
2270 info->set_resource_handler(transferred_resource_handler.get()); 2289 info->set_resource_handler(transferred_resource_handler.get());
2271 } 2290 }
2272 2291
2273 bool ResourceDispatcherHost::IsTransferredNavigation( 2292 bool ResourceDispatcherHost::IsTransferredNavigation(
2274 const content::GlobalRequestID& transferred_request_id) const { 2293 const content::GlobalRequestID& transferred_request_id) const {
2275 return transferred_navigations_.find(transferred_request_id) != 2294 return transferred_navigations_.find(transferred_request_id) !=
2276 transferred_navigations_.end(); 2295 transferred_navigations_.end();
2277 } 2296 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698