/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ /* vim:expandtab:shiftwidth=4:tabstop=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 "nsIIOService.idl" interface nsIDOMNode; interface nsIPrincipal; /** * nsIIOService2 extends nsIIOService */ [scriptable, uuid(52c5804b-0d3c-4d4f-8654-1c36fd310e69)] interface nsIIOService2 : nsIIOService { /** * While this is set, IOService will monitor an nsINetworkLinkService * (if available) and set its offline status to "true" whenever * isLinkUp is false. * * Applications that want to control changes to the IOService's offline * status should set this to false, watch for network:link-status-changed * broadcasts, and change nsIIOService::offline as they see fit. Note * that this means during application startup, IOService may be offline * if there is no link, until application code runs and can turn off * this management. */ attribute boolean manageOfflineStatus; /** * Creates a channel for a given URI. * * @param aURI * nsIURI from which to make a channel * @param aProxyURI * nsIURI to use for proxy resolution. Can be null in which * case aURI is used * @param aProxyFlags flags from nsIProtocolProxyService to use * when resolving proxies for this new channel * @param aLoadingNode * @param aLoadingPrincipal * @param aTriggeringPrincipal * @param aSecurityFlags * @param aContentPolicyType * These will be used as values for the nsILoadInfo object on the * created channel. For details, see nsILoadInfo in nsILoadInfo.idl * @return reference to the new nsIChannel object * * Please note, if you provide both a loadingNode and a loadingPrincipal, * then loadingPrincipal must be equal to loadingNode->NodePrincipal(). * But less error prone is to just supply a loadingNode. */ nsIChannel newChannelFromURIWithProxyFlags2(in nsIURI aURI, in nsIURI aProxyURI, in unsigned long aProxyFlags, in nsIDOMNode aLoadingNode, in nsIPrincipal aLoadingPrincipal, in nsIPrincipal aTriggeringPrincipal, in unsigned long aSecurityFlags, in unsigned long aContentPolicyType); /** * ***** DEPRECATED ***** * Please use newChannelFromURIWithProxyFlags2() * * Creates a channel for a given URI. * * @param aURI nsIURI from which to make a channel * @param aProxyURI nsIURI to use for proxy resolution. Can be null in which * case aURI is used * @param aProxyFlags flags from nsIProtocolProxyService to use * when resolving proxies for this new channel * @return reference to the new nsIChannel object */ nsIChannel newChannelFromURIWithProxyFlags(in nsIURI aURI, in nsIURI aProxyURI, in unsigned long aProxyFlags); };