|
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
|
2 /* This Source Code Form is subject to the terms of the Mozilla Public |
|
3 * License, v. 2.0. If a copy of the MPL was not distributed with this |
|
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
|
5 |
|
6 #include "nsIChannel.idl" |
|
7 |
|
8 /** |
|
9 * A channel to manage all cache-related interactions for layout |
|
10 * when it is dealing with dynamic pages created through |
|
11 * document.write(). This interface provides methods that will |
|
12 * help layout save dynamic pages in cache for future retrievals. |
|
13 */ |
|
14 |
|
15 [scriptable, uuid (89b0674a-9e2f-4124-9b59-481444be841d)] |
|
16 interface nsIWyciwygChannel : nsIChannel |
|
17 { |
|
18 /** |
|
19 * Append data to the cache entry; opens the cache entry if necessary. |
|
20 */ |
|
21 void writeToCacheEntry(in AString aData); |
|
22 |
|
23 /** |
|
24 * Close the cache entry; subsequent writes have undefined behavior. |
|
25 */ |
|
26 void closeCacheEntry(in nsresult reason); |
|
27 |
|
28 /** |
|
29 * Set the wyciwyg channels security info |
|
30 */ |
|
31 void setSecurityInfo(in nsISupports aSecurityInfo); |
|
32 |
|
33 /** |
|
34 * Store and read a charset and charset source on the wyciwyg channel. These |
|
35 * are opaque values to the channel; consumers who set them should know what |
|
36 * they mean. |
|
37 */ |
|
38 void setCharsetAndSource(in long aSource, in ACString aCharset); |
|
39 /** |
|
40 * The return value is the charset. Throws if either the charset or the |
|
41 * source cannot be retrieved. This is guaranteed to return a nonzero source |
|
42 * and a nonempty charset if it does not throw. |
|
43 */ |
|
44 ACString getCharsetAndSource(out long aSource); |
|
45 }; |