gecko-dev/netwerk/protocol/http/nsIHttpEventSink.idl

38 lines
1.2 KiB
Plaintext

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* 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 nsIChannel;
interface nsIHttpChannel;
interface nsIURI;
/**
* nsIHttpEventSink
*
* Implement this interface to receive control over various HTTP events. The
* HTTP channel will try to get this interface from its notificationCallbacks
* attribute, and if it doesn't find it there it will look for it from its
* loadGroup's notificationCallbacks attribute.
*
* These methods are called before onStartRequest, and should be handled
* SYNCHRONOUSLY.
*
* @deprecated Newly written code should use nsIChannelEventSink instead of this
* interface.
*/
[scriptable, uuid(9475a6af-6352-4251-90f9-d65b1cd2ea15)]
interface nsIHttpEventSink : nsISupports
{
/**
* Called when a redirect occurs due to a HTTP response like 302. The
* redirection may be to a non-http channel.
*
* @return failure cancels redirect
*/
void onRedirect(in nsIHttpChannel httpChannel,
in nsIChannel newChannel);
};