diff options
Diffstat (limited to 'netwerk/base/nsIApplicationCacheChannel.idl')
-rw-r--r-- | netwerk/base/nsIApplicationCacheChannel.idl | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/netwerk/base/nsIApplicationCacheChannel.idl b/netwerk/base/nsIApplicationCacheChannel.idl new file mode 100644 index 000000000..410e2946d --- /dev/null +++ b/netwerk/base/nsIApplicationCacheChannel.idl @@ -0,0 +1,57 @@ +/* -*- Mode: IDL; 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 "nsIApplicationCacheContainer.idl" + +/** + * Interface implemented by channels that support application caches. + */ +[scriptable, uuid(6FA816B1-6D5F-4380-9704-054D0908CFA3)] +interface nsIApplicationCacheChannel : nsIApplicationCacheContainer +{ + /** + * TRUE when the resource came from the application cache. This + * might be false even there is assigned an application cache + * e.g. in case of fallback of load of an entry matching bypass + * namespace. + */ + readonly attribute boolean loadedFromApplicationCache; + + /** + * When true, the channel will ask its notification callbacks for + * an application cache if one is not explicitly provided. Default + * value is true. + * + * NS_ERROR_ALREADY_OPENED will be thrown if set after AsyncOpen() + * is called. + */ + attribute boolean inheritApplicationCache; + + /** + * When true, the channel will choose an application cache if one + * was not explicitly provided and none is available from the + * notification callbacks. Default value is false. + * + * This attribute will not be transferred through a redirect. + * + * NS_ERROR_ALREADY_OPENED will be thrown if set after AsyncOpen() + * is called. + */ + attribute boolean chooseApplicationCache; + + /** + * A shortcut method to mark the cache item of this channel as 'foreign'. + * See the 'cache selection algorithm' and CACHE_SELECTION_RELOAD + * action handling in nsContentSink. + */ + void markOfflineCacheEntryAsForeign(); + + /** + * Set offline application cache object to instruct the channel + * to cache for offline use using this application cache. + */ + attribute nsIApplicationCache applicationCacheForWrite; +}; |