Bug 1941046 - Part 4: Send a callback request for impression and clicks of MARS Top...
[gecko.git] / dom / fetch / PFetch.ipdl
bloba2e3b14d29bf5f5f29cbdbbeec04affde8aeca83
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 include protocol PBackground;
7 include ClientIPCTypes;
8 include FetchTypes;
9 include IPCServiceWorkerDescriptor;
10 include NeckoChannelParams;
11 include PBackgroundSharedTypes;
12 include PerformanceTimingTypes;
14 namespace mozilla {
15 namespace dom {
17 struct FetchOpArgs{
18   IPCInternalRequest request;
19   PrincipalInfo principalInfo;
20   nsCString workerScript;
21   IPCClientInfo clientInfo;
22   IPCServiceWorkerDescriptor? controller;
23   CookieJarSettingsArgs? cookieJarSettings;
24   bool needOnDataAvailable;
25   bool hasCSPEventListener;
26   uint64_t associatedBrowsingContextID;
27   bool isThirdPartyContext;
28   bool isWorkerRequest;
29   bool isOn3PCBExceptionList;
32 protocol PFetch {
33   manager PBackground;
35   parent:
36     async FetchOp(FetchOpArgs aArgs);
38     async AbortFetchOp(bool aForceAbort);
40   child:
41     async OnResponseAvailableInternal(ParentToChildInternalResponse aResponse);
43     async OnResponseEnd(ResponseEndArgs aResponseEndArgs);
45     async OnDataAvailable();
47     async OnFlushConsoleReport(ConsoleReportCollected[] aReports);
49     async OnCSPViolationEvent(nsString aJSON);
51     async OnReportPerformanceTiming(ResponseTiming aTiming);
53     async OnNotifyNetworkMonitorAlternateStack(uint64_t aChannelID);
55     async __delete__(nsresult aResult);