/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* * The contents of this file are subject to the Mozilla Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/MPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is Mozilla. * * The Initial Developer of the Original Code is Netscape * Communications. Portions created by Netscape Communications are * Copyright (C) 2001 by Netscape Communications. All * Rights Reserved. * * Contributor(s): */ #include "nsISupports.idl" interface nsISimpleEnumerator; /** * 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 nsISimpleEnumerator 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; };