summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc')
-rw-r--r--chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc59
1 files changed, 39 insertions, 20 deletions
diff --git a/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc b/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc
index f5752cbbaab..0215b9965b1 100644
--- a/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc
+++ b/chromium/third_party/blink/renderer/core/loader/prefetched_signed_exchange_manager.cc
@@ -12,7 +12,6 @@
#include "third_party/blink/public/mojom/devtools/console_message.mojom-blink.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/public/platform/task_type.h"
-#include "third_party/blink/public/platform/web_url_load_timing.h"
#include "third_party/blink/public/platform/web_url_loader.h"
#include "third_party/blink/public/platform/web_url_loader_client.h"
#include "third_party/blink/public/platform/web_url_loader_factory.h"
@@ -23,6 +22,7 @@
#include "third_party/blink/renderer/core/frame/navigator.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/loader/alternate_signed_exchange_resource_info.h"
+#include "third_party/blink/renderer/platform/heap/heap.h"
#include "third_party/blink/renderer/platform/loader/link_header.h"
#include "third_party/blink/renderer/platform/runtime_enabled_features.h"
#include "third_party/blink/renderer/platform/scheduler/public/frame_scheduler.h"
@@ -43,7 +43,9 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader
PrefetchedSignedExchangeLoader(
const WebURLRequest& request,
scoped_refptr<base::SingleThreadTaskRunner> task_runner)
- : request_(request), task_runner_(std::move(task_runner)) {}
+ : task_runner_(std::move(task_runner)) {
+ request_.CopyFrom(request);
+ }
~PrefetchedSignedExchangeLoader() override {}
@@ -60,28 +62,44 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader
const WebURLRequest& request() const { return request_; }
// WebURLLoader methods:
- void LoadSynchronously(const WebURLRequest& request,
- WebURLLoaderClient* client,
- WebURLResponse& response,
- base::Optional<WebURLError>& error,
- WebData& data,
- int64_t& encoded_data_length,
- int64_t& encoded_body_length,
- WebBlobInfo& downloaded_blob) override {
+ void LoadSynchronously(
+ std::unique_ptr<network::ResourceRequest> request,
+ scoped_refptr<WebURLRequest::ExtraData> request_extra_data,
+ int requestor_id,
+ bool download_to_network_cache_only,
+ bool pass_response_pipe_to_client,
+ bool no_mime_sniffing,
+ base::TimeDelta timeout_interval,
+ WebURLLoaderClient* client,
+ WebURLResponse& response,
+ base::Optional<WebURLError>& error,
+ WebData& data,
+ int64_t& encoded_data_length,
+ int64_t& encoded_body_length,
+ WebBlobInfo& downloaded_blob) override {
NOTREACHED();
}
- void LoadAsynchronously(const WebURLRequest& request,
- WebURLLoaderClient* client) override {
+ void LoadAsynchronously(
+ std::unique_ptr<network::ResourceRequest> request,
+ scoped_refptr<WebURLRequest::ExtraData> request_extra_data,
+ int requestor_id,
+ bool download_to_network_cache_only,
+ bool no_mime_sniffing,
+ WebURLLoaderClient* client) override {
if (url_loader_) {
- url_loader_->LoadAsynchronously(request, client);
+ url_loader_->LoadAsynchronously(
+ std::move(request), std::move(request_extra_data), requestor_id,
+ download_to_network_cache_only, no_mime_sniffing, client);
return;
}
// It is safe to use Unretained(client), because |client| is a
// ResourceLoader which owns |this|, and we are binding with weak ptr of
// |this| here.
- pending_method_calls_.push(
- WTF::Bind(&PrefetchedSignedExchangeLoader::LoadAsynchronously,
- GetWeakPtr(), request, WTF::Unretained(client)));
+ pending_method_calls_.push(WTF::Bind(
+ &PrefetchedSignedExchangeLoader::LoadAsynchronously, GetWeakPtr(),
+ std::move(request), std::move(request_extra_data), requestor_id,
+ download_to_network_cache_only, no_mime_sniffing,
+ WTF::Unretained(client)));
}
void SetDefersLoading(bool value) override {
if (url_loader_) {
@@ -116,7 +134,7 @@ class PrefetchedSignedExchangeManager::PrefetchedSignedExchangeLoader
}
}
- const WebURLRequest request_;
+ WebURLRequest request_;
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
std::unique_ptr<WebURLLoader> url_loader_;
std::queue<base::OnceClosure> pending_method_calls_;
@@ -168,7 +186,7 @@ PrefetchedSignedExchangeManager::PrefetchedSignedExchangeManager(
PrefetchedSignedExchangeManager::~PrefetchedSignedExchangeManager() {}
-void PrefetchedSignedExchangeManager::Trace(blink::Visitor* visitor) {
+void PrefetchedSignedExchangeManager::Trace(Visitor* visitor) {
visitor->Trace(frame_);
}
@@ -266,8 +284,9 @@ void PrefetchedSignedExchangeManager::TriggerLoad() {
"Requesting the all original resources ignoreing all alternative signed"
" exchange responses.";
frame_->GetDocument()->AddConsoleMessage(
- ConsoleMessage::Create(mojom::ConsoleMessageSource::kNetwork,
- mojom::ConsoleMessageLevel::kError, message));
+ MakeGarbageCollected<ConsoleMessage>(
+ mojom::ConsoleMessageSource::kNetwork,
+ mojom::ConsoleMessageLevel::kError, message));
for (auto loader : loaders_) {
if (!loader)
continue;