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
7
interface nsIStreamListener;
8
9
/**
10
* Implemented by content side of IPC protocols.
11
*/
12
13
[scriptable, uuid(c45b92ae-4f07-41dd-b0ef-aa044eeabb1e)]
14
interface nsIChildChannel : nsISupports
15
{
16
/**
17
* Create the chrome side of the IPC protocol and join an existing 'real'
18
* channel on the parent process. The id is provided by
19
* nsIRedirectChannelRegistrar on the chrome process and pushed to the child
20
* protocol as an argument to event starting a redirect.
21
*
22
* Primarilly used in HttpChannelChild::Redirect1Begin on a newly created
23
* child channel, where the new channel is intended to be created on the
24
* child process.
25
*/
26
void connectParent(in uint32_t registrarId);
27
28
/**
29
* As AsyncOpen is called on the chrome process for redirect target channels,
30
* we have to inform the child side of the protocol of that fact by a special
31
* method.
32
*/
33
void completeRedirectSetup(in nsIStreamListener aListener,
34
in nsISupports aContext);
35
};