PHttpBackgroundChannel.ipdl (2942B)
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */ 3 4 /* This Source Code Form is subject to the terms of the Mozilla Public 5 * License, v. 2.0. If a copy of the MPL was not distributed with this 6 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 7 8 include protocol PBackground; 9 include protocol PStreamFilter; 10 include NeckoChannelParams; 11 include HttpChannelParams; 12 include PURLClassifierInfo; 13 14 include "mozilla/net/NeckoMessageUtils.h"; 15 using class mozilla::net::nsHttpHeaderArray from "nsHttpHeaderArray.h"; 16 17 namespace mozilla { 18 namespace net { 19 20 //------------------------------------------------------------------- 21 async protocol PHttpBackgroundChannel 22 { 23 manager PBackground; 24 25 child: 26 async OnStartRequest(nsHttpResponseHead responseHead, 27 bool useResponseHead, 28 nsHttpHeaderArray requestHeaders, 29 HttpChannelOnStartRequestArgs args, 30 HttpChannelAltDataStream altData, 31 TimeStamp onStartRequestStart); 32 33 // Combines a single OnDataAvailable and its associated OnProgress & 34 // OnStatus calls into one IPDL message 35 async OnTransportAndData(nsresult channelStatus, 36 nsresult transportStatus, 37 uint64_t offset, 38 uint32_t count, 39 nsCString data, 40 bool dataFromSocketProcess, 41 TimeStamp onDataAvailableStart); 42 43 44 async OnStopRequest(nsresult channelStatus, 45 ResourceTimingStructArgs timing, 46 TimeStamp lastActiveTabOptimization, 47 nsHttpHeaderArray responseTrailers, 48 ConsoleReportCollected[] consoleReport, 49 bool fromSocketProcess, 50 TimeStamp onStopRequestStart); 51 52 async OnConsoleReport(ConsoleReportCollected[] consoleReport); 53 54 async OnProgress(int64_t progress, int64_t progressMax); 55 56 async OnStatus(nsresult status); 57 58 // Forwards nsIMultiPartChannelListener::onAfterLastPart. Make sure we've 59 // disconnected our listeners, since we might not have on the last 60 // OnStopRequest. 61 async OnAfterLastPart(nsresult aStatus); 62 63 // Tell the child that the resource being loaded has been classified. 64 async NotifyClassificationFlags(uint32_t aClassificationFlags, bool aIsThirdParty); 65 66 // Tell the child information of matched URL againts SafeBrowsing list 67 async SetClassifierMatchedInfo(ClassifierInfo info); 68 69 // Tell the child information of matched URL againts SafeBrowsing tracking list 70 async SetClassifierMatchedTrackingInfo(ClassifierInfo info); 71 72 async AttachStreamFilter(Endpoint<PStreamFilterParent> aEndpoint); 73 74 async DetachStreamFilters(); 75 76 async __delete__(); 77 78 }; 79 80 } // namespace net 81 } // namespace mozilla