#include "components/feed/core/v2/image_fetcher.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "components/feed/core/v2/metrics_reporter.h"
#include "components/feed/core/v2/public/types.h"
#include "net/base/net_errors.h"
#include "net/http/http_request_headers.h"
#include "services/network/public/cpp/resource_request.h"
#include "services/network/public/cpp/shared_url_loader_factory.h"
#include "services/network/public/cpp/simple_url_loader.h"
#include "services/network/public/mojom/url_response_head.mojom.h"
namespace feed {
ImageFetcher::ImageFetcher(
scoped_refptr<::network::SharedURLLoaderFactory> url_loader_factory)
: … { … }
ImageFetcher::~ImageFetcher() = default;
ImageFetchId ImageFetcher::Fetch(const GURL& url, ImageCallback callback) { … }
void ImageFetcher::OnFetchComplete(ImageFetchId id,
const GURL& url,
std::unique_ptr<std::string> response_data) { … }
void ImageFetcher::Cancel(ImageFetchId id) { … }
std::optional<ImageFetcher::PendingRequest> ImageFetcher::RemovePending(
ImageFetchId id) { … }
uint64_t ImageFetcher::GetTrackId(ImageFetchId id) const { … }
ImageFetcher::PendingRequest::PendingRequest(
std::unique_ptr<network::SimpleURLLoader> loader,
ImageCallback callback)
: … { … }
ImageFetcher::PendingRequest::PendingRequest(
ImageFetcher::PendingRequest&& other) = default;
ImageFetcher::PendingRequest& ImageFetcher::PendingRequest::operator=(
ImageFetcher::PendingRequest&& other) = default;
ImageFetcher::PendingRequest::~PendingRequest() = default;
}