Bug 1900094 - Add telemetry for impressions missing due to domain-to-categories map...
[gecko.git] / browser / actors / SearchSERPTelemetryParent.sys.mjs
blob4e4011b1f835ce333b6d0ae39ecc5e7ee859b15a
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this
3  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5 const lazy = {};
7 ChromeUtils.defineESModuleGetters(lazy, {
8   SearchSERPTelemetry: "resource:///modules/SearchSERPTelemetry.sys.mjs",
9 });
11 export class SearchSERPTelemetryParent extends JSWindowActorParent {
12   receiveMessage(msg) {
13     let browser = this.browsingContext.top.embedderElement;
15     switch (msg.name) {
16       case "SearchTelemetry:PageInfo": {
17         lazy.SearchSERPTelemetry.reportPageWithAds(msg.data, browser);
18         break;
19       }
20       case "SearchTelemetry:AdImpressions": {
21         lazy.SearchSERPTelemetry.reportPageWithAdImpressions(msg.data, browser);
22         break;
23       }
24       case "SearchTelemetry:Action": {
25         lazy.SearchSERPTelemetry.reportPageAction(msg.data, browser);
26         break;
27       }
28       case "SearchTelemetry:PageImpression": {
29         lazy.SearchSERPTelemetry.reportPageImpression(msg.data, browser);
30         break;
31       }
32       case "SearchTelemetry:Domains": {
33         lazy.SearchSERPTelemetry.reportPageDomains(msg.data, browser);
34         break;
35       }
36     }
37   }