Source code

Revision control

Other Tools

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/. */
4
5
#include "nsISupports.idl"
6
interface nsIHttpChannel;
7
8
/**
9
* nsIHttpPushListener
10
*
11
* Used for triggering when a HTTP/2 push is received.
12
*
13
*/
14
[scriptable, uuid(0d6ce59c-ad5d-4520-b4d3-09664868f279)]
15
interface nsIHttpPushListener : nsISupports
16
{
17
/**
18
* When provided as a notificationCallback to an httpChannel, this.onPush()
19
* will be invoked when there is a >= Http2 push to that
20
* channel. The push may be in progress.
21
*
22
* The consumer must start the new channel in the usual way by calling
23
* pushChannel.AsyncOpen with a nsIStreamListener object that
24
* will receive the normal sequence of OnStartRequest(),
25
* 0 to N OnDataAvailable(), and onStopRequest().
26
*
27
* The new channel can be canceled after the AsyncOpen if it is not wanted.
28
*
29
* @param associatedChannel
30
* the monitor channel that was recieved on
31
* @param pushChannel
32
* a channel to the resource which is being pushed
33
*/
34
void onPush(in nsIHttpChannel associatedChannel,
35
in nsIHttpChannel pushChannel);
36
};