OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "chrome/browser/renderer_host/resource_dispatcher_host.h" | 7 #include "chrome/browser/renderer_host/resource_dispatcher_host.h" |
8 | 8 |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 16 matching lines...) Expand all Loading... |
27 #include "chrome/browser/login_prompt.h" | 27 #include "chrome/browser/login_prompt.h" |
28 #include "chrome/browser/net/chrome_url_request_context.h" | 28 #include "chrome/browser/net/chrome_url_request_context.h" |
29 #include "chrome/browser/net/url_request_tracking.h" | 29 #include "chrome/browser/net/url_request_tracking.h" |
30 #include "chrome/browser/plugin_service.h" | 30 #include "chrome/browser/plugin_service.h" |
31 #include "chrome/browser/profile.h" | 31 #include "chrome/browser/profile.h" |
32 #include "chrome/browser/renderer_host/async_resource_handler.h" | 32 #include "chrome/browser/renderer_host/async_resource_handler.h" |
33 #include "chrome/browser/renderer_host/buffered_resource_handler.h" | 33 #include "chrome/browser/renderer_host/buffered_resource_handler.h" |
34 #include "chrome/browser/renderer_host/cross_site_resource_handler.h" | 34 #include "chrome/browser/renderer_host/cross_site_resource_handler.h" |
35 #include "chrome/browser/renderer_host/download_resource_handler.h" | 35 #include "chrome/browser/renderer_host/download_resource_handler.h" |
36 #include "chrome/browser/renderer_host/global_request_id.h" | 36 #include "chrome/browser/renderer_host/global_request_id.h" |
| 37 #include "chrome/browser/renderer_host/redirect_to_file_resource_handler.h" |
37 #include "chrome/browser/renderer_host/render_view_host.h" | 38 #include "chrome/browser/renderer_host/render_view_host.h" |
38 #include "chrome/browser/renderer_host/render_view_host_delegate.h" | 39 #include "chrome/browser/renderer_host/render_view_host_delegate.h" |
39 #include "chrome/browser/renderer_host/render_view_host_notification_task.h" | 40 #include "chrome/browser/renderer_host/render_view_host_notification_task.h" |
40 #include "chrome/browser/renderer_host/resource_dispatcher_host_request_info.h" | 41 #include "chrome/browser/renderer_host/resource_dispatcher_host_request_info.h" |
41 #include "chrome/browser/renderer_host/resource_queue.h" | 42 #include "chrome/browser/renderer_host/resource_queue.h" |
42 #include "chrome/browser/renderer_host/resource_request_details.h" | 43 #include "chrome/browser/renderer_host/resource_request_details.h" |
43 #include "chrome/browser/renderer_host/safe_browsing_resource_handler.h" | 44 #include "chrome/browser/renderer_host/safe_browsing_resource_handler.h" |
44 #include "chrome/browser/renderer_host/save_file_resource_handler.h" | 45 #include "chrome/browser/renderer_host/save_file_resource_handler.h" |
45 #include "chrome/browser/renderer_host/socket_stream_dispatcher_host.h" | 46 #include "chrome/browser/renderer_host/socket_stream_dispatcher_host.h" |
46 #include "chrome/browser/renderer_host/sync_resource_handler.h" | 47 #include "chrome/browser/renderer_host/sync_resource_handler.h" |
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
394 handler = new SyncResourceHandler(receiver_, request_data.url, sync_result); | 395 handler = new SyncResourceHandler(receiver_, request_data.url, sync_result); |
395 } else { | 396 } else { |
396 handler = new AsyncResourceHandler(receiver_, | 397 handler = new AsyncResourceHandler(receiver_, |
397 child_id, | 398 child_id, |
398 route_id, | 399 route_id, |
399 receiver_->handle(), | 400 receiver_->handle(), |
400 request_data.url, | 401 request_data.url, |
401 this); | 402 this); |
402 } | 403 } |
403 | 404 |
| 405 if (request_data.download_to_file) |
| 406 handler = new RedirectToFileResourceHandler(handler, child_id, this); |
| 407 |
404 if (HandleExternalProtocol(request_id, child_id, route_id, | 408 if (HandleExternalProtocol(request_id, child_id, route_id, |
405 request_data.url, request_data.resource_type, | 409 request_data.url, request_data.resource_type, |
406 handler)) { | 410 handler)) { |
407 return; | 411 return; |
408 } | 412 } |
409 | 413 |
410 // Construct the request. | 414 // Construct the request. |
411 URLRequest* request = new URLRequest(request_data.url, this); | 415 URLRequest* request = new URLRequest(request_data.url, this); |
412 request->set_method(request_data.method); | 416 request->set_method(request_data.method); |
413 request->set_first_party_for_cookies(request_data.first_party_for_cookies); | 417 request->set_first_party_for_cookies(request_data.first_party_for_cookies); |
(...skipping 1421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1835 // them. | 1839 // them. |
1836 case ResourceType::IMAGE: | 1840 case ResourceType::IMAGE: |
1837 return net::LOWEST; | 1841 return net::LOWEST; |
1838 | 1842 |
1839 default: | 1843 default: |
1840 // When new resource types are added, their priority must be considered. | 1844 // When new resource types are added, their priority must be considered. |
1841 NOTREACHED(); | 1845 NOTREACHED(); |
1842 return net::LOW; | 1846 return net::LOW; |
1843 } | 1847 } |
1844 } | 1848 } |
OLD | NEW |