OLD | NEW |
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/common/resource_dispatcher.h" | 7 #include "content/common/resource_dispatcher.h" |
8 | 8 |
9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 513 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
524 request_info.is_deferred = false; | 524 request_info.is_deferred = false; |
525 | 525 |
526 FollowPendingRedirect(request_id, request_info); | 526 FollowPendingRedirect(request_id, request_info); |
527 | 527 |
528 MessageLoop::current()->PostTask(FROM_HERE, | 528 MessageLoop::current()->PostTask(FROM_HERE, |
529 base::Bind(&ResourceDispatcher::FlushDeferredMessages, | 529 base::Bind(&ResourceDispatcher::FlushDeferredMessages, |
530 weak_factory_.GetWeakPtr(), request_id)); | 530 weak_factory_.GetWeakPtr(), request_id)); |
531 } | 531 } |
532 } | 532 } |
533 | 533 |
| 534 ResourceDispatcher::PendingRequestInfo::PendingRequestInfo() |
| 535 : peer(NULL), |
| 536 resource_type(ResourceType::SUB_RESOURCE), |
| 537 is_deferred(false) { |
| 538 } |
| 539 |
| 540 ResourceDispatcher::PendingRequestInfo::PendingRequestInfo( |
| 541 webkit_glue::ResourceLoaderBridge::Peer* peer, |
| 542 ResourceType::Type resource_type, |
| 543 const GURL& request_url) |
| 544 : peer(peer), |
| 545 resource_type(resource_type), |
| 546 is_deferred(false), |
| 547 url(request_url), |
| 548 request_start(base::TimeTicks::Now()) { |
| 549 } |
| 550 |
| 551 ResourceDispatcher::PendingRequestInfo::~PendingRequestInfo() {} |
| 552 |
534 void ResourceDispatcher::DispatchMessage(const IPC::Message& message) { | 553 void ResourceDispatcher::DispatchMessage(const IPC::Message& message) { |
535 IPC_BEGIN_MESSAGE_MAP(ResourceDispatcher, message) | 554 IPC_BEGIN_MESSAGE_MAP(ResourceDispatcher, message) |
536 IPC_MESSAGE_HANDLER(ResourceMsg_UploadProgress, OnUploadProgress) | 555 IPC_MESSAGE_HANDLER(ResourceMsg_UploadProgress, OnUploadProgress) |
537 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedResponse, OnReceivedResponse) | 556 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedResponse, OnReceivedResponse) |
538 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedCachedMetadata, | 557 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedCachedMetadata, |
539 OnReceivedCachedMetadata) | 558 OnReceivedCachedMetadata) |
540 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedRedirect, OnReceivedRedirect) | 559 IPC_MESSAGE_HANDLER(ResourceMsg_ReceivedRedirect, OnReceivedRedirect) |
541 IPC_MESSAGE_HANDLER(ResourceMsg_DataReceived, OnReceivedData) | 560 IPC_MESSAGE_HANDLER(ResourceMsg_DataReceived, OnReceivedData) |
542 IPC_MESSAGE_HANDLER(ResourceMsg_DataDownloaded, OnDownloadedData) | 561 IPC_MESSAGE_HANDLER(ResourceMsg_DataDownloaded, OnDownloadedData) |
543 IPC_MESSAGE_HANDLER(ResourceMsg_RequestComplete, OnRequestComplete) | 562 IPC_MESSAGE_HANDLER(ResourceMsg_RequestComplete, OnRequestComplete) |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
685 void ResourceDispatcher::ReleaseResourcesInMessageQueue(MessageQueue* queue) { | 704 void ResourceDispatcher::ReleaseResourcesInMessageQueue(MessageQueue* queue) { |
686 while (!queue->empty()) { | 705 while (!queue->empty()) { |
687 IPC::Message* message = queue->front(); | 706 IPC::Message* message = queue->front(); |
688 ReleaseResourcesInDataMessage(*message); | 707 ReleaseResourcesInDataMessage(*message); |
689 queue->pop_front(); | 708 queue->pop_front(); |
690 delete message; | 709 delete message; |
691 } | 710 } |
692 } | 711 } |
693 | 712 |
694 } // namespace content | 713 } // namespace content |
OLD | NEW |