netwerk/base/public/nsIChildChannel.idl
author Ehsan Akhgari <ehsan@mozilla.com>
Wed, 22 Aug 2012 11:56:38 -0400
changeset 102997 a16372ce30b5f6b747246b01fcd215a4bf3b6342
parent 94475 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg This patch was generated by a script. Here's the source of the script for future reference: function convert() { echo "Converting $1 to $2..." find . ! -wholename "*nsprpub*" \ ! -wholename "*security/nss*" \ ! -wholename "*/.hg*" \ ! -wholename "obj-ff-dbg*" \ ! -name nsXPCOMCID.h \ ! -name prtypes.h \ -type f \ \( -iname "*.cpp" \ -o -iname "*.h" \ -o -iname "*.c" \ -o -iname "*.cc" \ -o -iname "*.idl" \ -o -iname "*.ipdl" \ -o -iname "*.ipdlh" \ -o -iname "*.mm" \) | \ xargs -n 1 sed -i -e "s/\b$1\b/$2/g" } convert PRInt8 int8_t convert PRUint8 uint8_t convert PRInt16 int16_t convert PRUint16 uint16_t convert PRInt32 int32_t convert PRUint32 uint32_t convert PRInt64 int64_t convert PRUint64 uint64_t convert PRIntn int convert PRUintn unsigned convert PRSize size_t convert PROffset32 int32_t convert PROffset64 int64_t convert PRPtrdiff ptrdiff_t convert PRFloat64 double

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

interface nsIStreamListener;

/**
 * Implemented by content side of IPC protocols.
 */

[scriptable, uuid(c45b92ae-4f07-41dd-b0ef-aa044eeabb1e)]
interface nsIChildChannel : nsISupports
{
  /**
   * Create the chrome side of the IPC protocol and join an existing 'real'
   * channel on the parent process.  The id is provided by
   * nsIRedirectChannelRegistrar on the chrome process and pushed to the child
   * protocol as an argument to event starting a redirect.
   *
   * Primarilly used in HttpChannelChild::Redirect1Begin on a newly created
   * child channel, where the new channel is intended to be created on the
   * child process.
   */
  void connectParent(in uint32_t id);

  /**
   * As AsyncOpen is called on the chrome process for redirect target channels,
   * we have to inform the child side of the protocol of that fact by a special
   * method.
   */
  void completeRedirectSetup(in nsIStreamListener aListener,
                             in nsISupports aContext);
};