#include "content/browser/web_package/subresource_signed_exchange_url_loader_factory.h"
#include <stdint.h>
#include <memory>
#include <utility>
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/notreached.h"
#include "base/time/time.h"
#include "content/browser/web_package/signed_exchange_inner_response_url_loader.h"
#include "mojo/public/cpp/bindings/message.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "net/base/net_errors.h"
#include "services/network/public/cpp/initiator_lock_compatibility.h"
#include "services/network/public/cpp/resource_request.h"
#include "services/network/public/mojom/url_loader.mojom.h"
#include "storage/browser/blob/blob_data_handle.h"
namespace content {
namespace {
bool IsValidRequestInitiator(const network::ResourceRequest& request,
const url::Origin& request_initiator_origin_lock) { … }
}
SubresourceSignedExchangeURLLoaderFactory::
SubresourceSignedExchangeURLLoaderFactory(
mojo::PendingReceiver<network::mojom::URLLoaderFactory> receiver,
std::unique_ptr<const PrefetchedSignedExchangeCacheEntry> entry,
const url::Origin& request_initiator_origin_lock)
: … { … }
SubresourceSignedExchangeURLLoaderFactory::
~SubresourceSignedExchangeURLLoaderFactory() = default;
void SubresourceSignedExchangeURLLoaderFactory::CreateLoaderAndStart(
mojo::PendingReceiver<network::mojom::URLLoader> loader,
int32_t request_id,
uint32_t options,
const network::ResourceRequest& request,
mojo::PendingRemote<network::mojom::URLLoaderClient> client,
const net::MutableNetworkTrafficAnnotationTag& traffic_annotation) { … }
void SubresourceSignedExchangeURLLoaderFactory::Clone(
mojo::PendingReceiver<network::mojom::URLLoaderFactory> receiver) { … }
void SubresourceSignedExchangeURLLoaderFactory::OnMojoDisconnect() { … }
}