#include "content/browser/loader/keep_alive_attribution_request_helper.h"
#include <stdint.h>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include "base/atomic_sequence_num.h"
#include "base/check.h"
#include "base/feature_list.h"
#include "base/memory/ptr_util.h"
#include "base/memory/weak_ptr.h"
#include "base/unguessable_token.h"
#include "components/attribution_reporting/eligibility.h"
#include "components/attribution_reporting/features.h"
#include "components/attribution_reporting/registration_eligibility.mojom-forward.h"
#include "components/attribution_reporting/suitable_origin.h"
#include "content/browser/attribution_reporting/attribution_background_registrations_id.h"
#include "content/browser/attribution_reporting/attribution_data_host_manager.h"
#include "content/browser/attribution_reporting/attribution_suitable_context.h"
#include "content/public/browser/global_routing_id.h"
#include "net/http/http_response_headers.h"
#include "services/network/public/mojom/attribution.mojom-forward.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/common/tokens/tokens.h"
#include "url/gurl.h"
namespace content {
namespace {
RegistrationEligibility;
}
std::unique_ptr<KeepAliveAttributionRequestHelper>
KeepAliveAttributionRequestHelper::CreateIfNeeded(
network::mojom::AttributionReportingEligibility eligibility,
const GURL& request_url,
const std::optional<base::UnguessableToken>& attribution_src_token,
const std::optional<std::string>& devtools_request_id,
const AttributionSuitableContext& context) { … }
KeepAliveAttributionRequestHelper::KeepAliveAttributionRequestHelper(
BackgroundRegistrationsId id,
AttributionDataHostManager* attribution_data_host_manager,
const GURL& reporting_url)
: … { … }
void KeepAliveAttributionRequestHelper::OnReceiveRedirect(
const net::HttpResponseHeaders* headers,
const GURL& redirect_url) { … }
void KeepAliveAttributionRequestHelper::OnReceiveResponse(
const net::HttpResponseHeaders* headers) { … }
KeepAliveAttributionRequestHelper::~KeepAliveAttributionRequestHelper() { … }
}