#include "third_party/blink/renderer/core/frame/reporting_context.h"
#include "third_party/blink/public/platform/browser_interface_broker_proxy.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/public/platform/task_type.h"
#include "third_party/blink/renderer/core/dom/document.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/csp/csp_violation_report_body.h"
#include "third_party/blink/renderer/core/frame/deprecation/deprecation_report_body.h"
#include "third_party/blink/renderer/core/frame/document_policy_violation_report_body.h"
#include "third_party/blink/renderer/core/frame/intervention_report_body.h"
#include "third_party/blink/renderer/core/frame/permissions_policy_violation_report_body.h"
#include "third_party/blink/renderer/core/frame/report.h"
#include "third_party/blink/renderer/core/frame/reporting_observer.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
namespace blink {
namespace {
class DictionaryValueReportBody final : public ReportBody { … };
}
const char ReportingContext::kSupplementName[] = …;
ReportingContext::ReportingContext(ExecutionContext& context)
: … { … }
ReportingContext* ReportingContext::From(ExecutionContext* context) { … }
void ReportingContext::Bind(
mojo::PendingReceiver<mojom::blink::ReportingObserver> receiver) { … }
void ReportingContext::QueueReport(Report* report,
const Vector<String>& endpoints) { … }
void ReportingContext::RegisterObserver(blink::ReportingObserver* observer) { … }
void ReportingContext::UnregisterObserver(blink::ReportingObserver* observer) { … }
void ReportingContext::Notify(mojom::blink::ReportPtr report) { … }
void ReportingContext::Trace(Visitor* visitor) const { … }
void ReportingContext::CountReport(Report* report) { … }
const HeapMojoRemote<mojom::blink::ReportingServiceProxy>&
ReportingContext::GetReportingService() const { … }
void ReportingContext::NotifyInternal(Report* report) { … }
void ReportingContext::SendToReportingAPI(Report* report,
const String& endpoint) const { … }
}