| // Copyright 2022 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| module attribution_reporting.mojom; |
| |
| import "components/attribution_reporting/registration.mojom"; |
| import "components/attribution_reporting/registration_header_error.mojom"; |
| |
| // Browser-process interface responsible for processing attribution |
| // configurations registered by the renderer. These configurations may be sent |
| // out of the normal frame lifecycle, e.g. after the frame is destroyed. |
| interface DataHost { |
| // Called when data from the renderer is available for a given attributionsrc |
| // request. |
| SourceDataAvailable(attribution_reporting.mojom.SuitableOrigin reporting_origin, |
| attribution_reporting.mojom.SourceRegistration data, |
| bool was_fetched_via_service_worker); |
| |
| // Called when trigger data from the renderer is available for a given |
| // attributionsrc request. |
| TriggerDataAvailable(attribution_reporting.mojom.SuitableOrigin reporting_origin, |
| attribution_reporting.mojom.TriggerRegistration data, |
| bool was_fetched_via_service_worker); |
| |
| // Called when OS source data from the renderer is available for a given |
| // attributionsrc request. The OS will make subsequent requests to |
| // to obtain the actual registration. |
| OsSourceDataAvailable(attribution_reporting.mojom.OsRegistration registration, |
| bool was_fetched_via_service_worker); |
| |
| // Called when OS trigger data from the renderer is available for a given |
| // attributionsrc request. The OS will make subsequent requests to |
| // to obtain the actual registration. |
| OsTriggerDataAvailable(attribution_reporting.mojom.OsRegistration registration, |
| bool was_fetched_via_service_worker); |
| |
| // Called when an error occurs during header validation in the renderer for |
| // a given attributionsrc request. |
| ReportRegistrationHeaderError( |
| attribution_reporting.mojom.SuitableOrigin reporting_origin, |
| attribution_reporting.mojom.RegistrationHeaderError error); |
| }; |
| |
| // Enum to log the number of calls to OsSourceDataAvailable in Blink and the |
| // number of calls received in the Browser process. |
| // These values are persisted to logs. Entries should not be renumbered and |
| // numeric values should never be reused. |
| // |
| // LINT.IfChange(DataAvailableCallsite) |
| enum DataAvailableCallsite { |
| kBlink = 0, |
| kBrowser, |
| }; |
| // LINT.ThenChange(//tools/metrics/histograms/metadata/attribution_reporting/enums.xml:DataAvailableCallsite) |