/* -*- 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 nsIUTF8StringEnumerator; /** * A channel interface which allows special handling of encoded content */ [scriptable, uuid(30d7ec3a-f376-4652-9276-3092ec57abb6)] interface nsIEncodedChannel : nsISupports { /** * This attribute holds the MIME types corresponding to the content * encodings on the channel. The enumerator returns nsISupportsCString * objects. The first one corresponds to the outermost encoding on the * channel and then we work our way inward. "identity" is skipped and not * represented on the list. Unknown encodings make the enumeration stop. * If you want the actual Content-Encoding value, use * getResponseHeader("Content-Encoding"). * * When there is no Content-Encoding header, this property is null. * * Modifying the Content-Encoding header on the channel will cause * this enumerator to have undefined behavior. Don't do it. * * Also note that contentEncodings only exist during or after OnStartRequest. * Calling contentEncodings before OnStartRequest is an error. */ readonly attribute nsIUTF8StringEnumerator contentEncodings; /** * This attribute controls whether or not content conversion should be * done per the Content-Encoding response header. applyConversion can only * be set before or during OnStartRequest. Calling this during * OnDataAvailable is an error. * * TRUE by default. */ attribute boolean applyConversion; };