Commit 76fc3578 authored by Lukasz Anforowicz's avatar Lukasz Anforowicz Committed by Commit Bot

Remove |blob_data_handle| parameter from DownloadUrl method.

This parameter is not needed now, when NetworkService has successfully
shipped on all platforms.  In particular, even before this CL the
|blob_data_handle| parameter was not used at all by
DownloadManagerImpl::BeginDownloadInternal.

Change-Id: I41393ebfc93ea671d43727485980fe7837198f88
Bug: 1008917
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1828108
Commit-Queue: Kinuko Yasuda <kinuko@chromium.org>
Auto-Submit: Łukasz Anforowicz <lukasza@chromium.org>
Reviewed-by: default avatarKinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#700820}
parent 40a65ff8
...@@ -727,7 +727,7 @@ void DownloadManagerImpl::CreateSavePackageDownloadItemWithId( ...@@ -727,7 +727,7 @@ void DownloadManagerImpl::CreateSavePackageDownloadItemWithId(
void DownloadManagerImpl::ResumeInterruptedDownload( void DownloadManagerImpl::ResumeInterruptedDownload(
std::unique_ptr<download::DownloadUrlParameters> params, std::unique_ptr<download::DownloadUrlParameters> params,
const GURL& site_url) { const GURL& site_url) {
BeginDownloadInternal(std::move(params), nullptr /* blob_data_handle */, BeginDownloadInternal(std::move(params),
nullptr /* blob_url_loader_factory */, false, site_url); nullptr /* blob_url_loader_factory */, false, site_url);
} }
...@@ -838,13 +838,11 @@ bool DownloadManagerImpl::CanDownload( ...@@ -838,13 +838,11 @@ bool DownloadManagerImpl::CanDownload(
void DownloadManagerImpl::DownloadUrl( void DownloadManagerImpl::DownloadUrl(
std::unique_ptr<download::DownloadUrlParameters> params) { std::unique_ptr<download::DownloadUrlParameters> params) {
DownloadUrl(std::move(params), nullptr /* blob_data_handle */, DownloadUrl(std::move(params), nullptr /* blob_url_loader_factory */);
nullptr /* blob_url_loader_factory */);
} }
void DownloadManagerImpl::DownloadUrl( void DownloadManagerImpl::DownloadUrl(
std::unique_ptr<download::DownloadUrlParameters> params, std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory) { scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory) {
if (params->post_id() >= 0) { if (params->post_id() >= 0) {
// Check this here so that the traceback is more useful. // Check this here so that the traceback is more useful.
...@@ -858,8 +856,8 @@ void DownloadManagerImpl::DownloadUrl( ...@@ -858,8 +856,8 @@ void DownloadManagerImpl::DownloadUrl(
params->render_frame_host_routing_id()); params->render_frame_host_routing_id());
if (rfh) if (rfh)
params->set_frame_tree_node_id(rfh->GetFrameTreeNodeId()); params->set_frame_tree_node_id(rfh->GetFrameTreeNodeId());
BeginDownloadInternal(std::move(params), std::move(blob_data_handle), BeginDownloadInternal(std::move(params), std::move(blob_url_loader_factory),
std::move(blob_url_loader_factory), true, true,
rfh ? rfh->GetSiteInstance()->GetSiteURL() : GURL()); rfh ? rfh->GetSiteInstance()->GetSiteURL() : GURL());
} }
...@@ -1285,7 +1283,6 @@ void DownloadManagerImpl::BeginResourceDownloadOnChecksComplete( ...@@ -1285,7 +1283,6 @@ void DownloadManagerImpl::BeginResourceDownloadOnChecksComplete(
void DownloadManagerImpl::BeginDownloadInternal( void DownloadManagerImpl::BeginDownloadInternal(
std::unique_ptr<download::DownloadUrlParameters> params, std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory, scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory,
bool is_new_download, bool is_new_download,
const GURL& site_url) { const GURL& site_url) {
......
...@@ -88,7 +88,6 @@ class CONTENT_EXPORT DownloadManagerImpl ...@@ -88,7 +88,6 @@ class CONTENT_EXPORT DownloadManagerImpl
void DownloadUrl( void DownloadUrl(
std::unique_ptr<download::DownloadUrlParameters> parameters) override; std::unique_ptr<download::DownloadUrlParameters> parameters) override;
void DownloadUrl(std::unique_ptr<download::DownloadUrlParameters> params, void DownloadUrl(std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> scoped_refptr<network::SharedURLLoaderFactory>
blob_url_loader_factory) override; blob_url_loader_factory) override;
void AddObserver(Observer* observer) override; void AddObserver(Observer* observer) override;
...@@ -243,7 +242,6 @@ class CONTENT_EXPORT DownloadManagerImpl ...@@ -243,7 +242,6 @@ class CONTENT_EXPORT DownloadManagerImpl
// Helper method to start or resume a download. // Helper method to start or resume a download.
void BeginDownloadInternal( void BeginDownloadInternal(
std::unique_ptr<download::DownloadUrlParameters> params, std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory, scoped_refptr<network::SharedURLLoaderFactory> blob_url_loader_factory,
bool is_new_download, bool is_new_download,
const GURL& site_url); const GURL& site_url);
......
...@@ -107,12 +107,8 @@ void CreateChildFrameOnUI( ...@@ -107,12 +107,8 @@ void CreateChildFrameOnUI(
} }
} }
// |blob_data_handle| is only here for the legacy code path. With network
// service enabled |blob_url_token| should be provided and will be used instead
// to download the correct blob.
void DownloadUrlOnUIThread( void DownloadUrlOnUIThread(
std::unique_ptr<download::DownloadUrlParameters> parameters, std::unique_ptr<download::DownloadUrlParameters> parameters,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
mojo::PendingRemote<blink::mojom::BlobURLToken> blob_url_token) { mojo::PendingRemote<blink::mojom::BlobURLToken> blob_url_token) {
DCHECK_CURRENTLY_ON(BrowserThread::UI); DCHECK_CURRENTLY_ON(BrowserThread::UI);
...@@ -134,7 +130,6 @@ void DownloadUrlOnUIThread( ...@@ -134,7 +130,6 @@ void DownloadUrlOnUIThread(
BrowserContext::GetDownloadManager(browser_context); BrowserContext::GetDownloadManager(browser_context);
parameters->set_download_source(download::DownloadSource::FROM_RENDERER); parameters->set_download_source(download::DownloadSource::FROM_RENDERER);
download_manager->DownloadUrl(std::move(parameters), download_manager->DownloadUrl(std::move(parameters),
std::move(blob_data_handle),
std::move(blob_url_loader_factory)); std::move(blob_url_loader_factory));
} }
...@@ -360,24 +355,9 @@ void RenderFrameMessageFilter::DownloadUrl( ...@@ -360,24 +355,9 @@ void RenderFrameMessageFilter::DownloadUrl(
Referrer::ReferrerPolicyForUrlRequest(referrer.policy)); Referrer::ReferrerPolicyForUrlRequest(referrer.policy));
parameters->set_initiator(initiator); parameters->set_initiator(initiator);
// If network service is enabled we should always have a |blob_url_token|, base::PostTask(FROM_HERE, {BrowserThread::UI},
// which will be used to download the correct blob. But in the legacy base::BindOnce(&DownloadUrlOnUIThread, std::move(parameters),
// non-network service code path we still need to look up the BlobDataHandle std::move(blob_url_token)));
// for the URL here, to make sure the correct blob ends up getting downloaded.
std::unique_ptr<storage::BlobDataHandle> blob_data_handle;
if (url.SchemeIsBlob()) {
ChromeBlobStorageContext* blob_context =
GetChromeBlobStorageContextForResourceContext(resource_context_);
blob_data_handle = blob_context->context()->GetBlobDataFromPublicURL(url);
// Don't care if the above fails. We are going to let the download go
// through and allow it to be interrupted so that the embedder can deal.
}
base::PostTask(
FROM_HERE, {BrowserThread::UI},
base::BindOnce(&DownloadUrlOnUIThread, std::move(parameters),
std::move(blob_data_handle), std::move(blob_url_token)));
} }
void RenderFrameMessageFilter::OnCreateChildFrame( void RenderFrameMessageFilter::OnCreateChildFrame(
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
#include <stdint.h> #include <stdint.h>
#include <memory>
#include <string> #include <string>
#include <vector> #include <vector>
...@@ -119,15 +120,8 @@ class CONTENT_EXPORT DownloadManager : public base::SupportsUserData::Data, ...@@ -119,15 +120,8 @@ class CONTENT_EXPORT DownloadManager : public base::SupportsUserData::Data,
base::Time remove_end) = 0; base::Time remove_end) = 0;
using SimpleDownloadManager::DownloadUrl; using SimpleDownloadManager::DownloadUrl;
// For downloads of blob URLs, the caller can pass a BlobDataHandle object so
// that the blob will remain valid until the download starts. The
// BlobDataHandle will be attached to the associated URLRequest.
// If |blob_data_handle| is unspecified, and the blob URL cannot be mapped to
// a blob by the time the download request starts, then the download will
// fail.
virtual void DownloadUrl( virtual void DownloadUrl(
std::unique_ptr<download::DownloadUrlParameters> parameters, std::unique_ptr<download::DownloadUrlParameters> parameters,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> scoped_refptr<network::SharedURLLoaderFactory>
blob_url_loader_factory) = 0; blob_url_loader_factory) = 0;
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <stdint.h> #include <stdint.h>
#include <string> #include <string>
#include <utility>
#include <vector> #include <vector>
#include "base/optional.h" #include "base/optional.h"
...@@ -109,10 +110,9 @@ class MockDownloadManager : public DownloadManager { ...@@ -109,10 +110,9 @@ class MockDownloadManager : public DownloadManager {
MOCK_METHOD1(DownloadUrlMock, void(download::DownloadUrlParameters*)); MOCK_METHOD1(DownloadUrlMock, void(download::DownloadUrlParameters*));
void DownloadUrl( void DownloadUrl(
std::unique_ptr<download::DownloadUrlParameters> params) override { std::unique_ptr<download::DownloadUrlParameters> params) override {
DownloadUrl(std::move(params), nullptr, nullptr); DownloadUrl(std::move(params), nullptr);
} }
void DownloadUrl(std::unique_ptr<download::DownloadUrlParameters> params, void DownloadUrl(std::unique_ptr<download::DownloadUrlParameters> params,
std::unique_ptr<storage::BlobDataHandle> blob_data_handle,
scoped_refptr<network::SharedURLLoaderFactory> scoped_refptr<network::SharedURLLoaderFactory>
blob_url_loader_factory) override { blob_url_loader_factory) override {
DownloadUrlMock(params.get()); DownloadUrlMock(params.get());
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment