#include "content/browser/origin_trials/critical_origin_trials_throttle.h"
#include "base/metrics/histogram_macros.h"
#include "base/time/time.h"
#include "content/browser/origin_trials/origin_trials_utils.h"
#include "content/public/browser/origin_trials_controller_delegate.h"
#include "services/network/public/cpp/resource_request.h"
#include "third_party/blink/public/common/origin_trials/origin_trials.h"
#include "third_party/blink/public/common/origin_trials/trial_token.h"
#include "third_party/blink/public/common/origin_trials/trial_token_result.h"
#include "third_party/blink/public/common/origin_trials/trial_token_validator.h"
#include "third_party/blink/public/mojom/loader/resource_load_info.mojom.h"
#include "url/origin.h"
namespace content {
ResourceType;
bool CriticalOriginTrialsThrottle::IsNavigationRequest(
const network::ResourceRequest& request) { … }
CriticalOriginTrialsThrottle::CriticalOriginTrialsThrottle(
OriginTrialsControllerDelegate& origin_trials_delegate,
std::optional<url::Origin> top_frame_origin,
std::optional<ukm::SourceId> source_id)
: … { … }
CriticalOriginTrialsThrottle::~CriticalOriginTrialsThrottle() = default;
void CriticalOriginTrialsThrottle::WillStartRequest(
network::ResourceRequest* request,
bool* defer) { … }
void CriticalOriginTrialsThrottle::BeforeWillProcessResponse(
const GURL& response_url,
const network::mojom::URLResponseHead& response_head,
RestartWithURLReset* restart_with_url_reset) { … }
void CriticalOriginTrialsThrottle::BeforeWillRedirectRequest(
net::RedirectInfo* redirect_info,
const network::mojom::URLResponseHead& response_head,
RestartWithURLReset* restart_with_url_reset,
std::vector<std::string>* to_be_removed_request_headers,
net::HttpRequestHeaders* modified_request_headers,
net::HttpRequestHeaders* modified_cors_exempt_request_headers) { … }
void CriticalOriginTrialsThrottle::MaybeRestartWithTrials(
const network::mojom::URLResponseHead& response_head,
RestartWithURLReset* restart_with_url_reset) { … }
void CriticalOriginTrialsThrottle::SetPreRequestFields(
const GURL& request_url) { … }
}