|
1 /* -*- Mode: C++; tab-width: 8; 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 "nsISupports.idl" |
|
7 interface nsIURI; |
|
8 interface nsIRequest; |
|
9 interface nsIFeedResult; |
|
10 |
|
11 /** |
|
12 * nsIFeedResultService provides a globally-accessible object for retrieving |
|
13 * the results of feed processing. |
|
14 */ |
|
15 [scriptable, uuid(950a829e-c20e-4dc3-b447-f8b753ae54da)] |
|
16 interface nsIFeedResultService : nsISupports |
|
17 { |
|
18 /** |
|
19 * When set to true, forces the preview page to be displayed, regardless |
|
20 * of the user's preferences. |
|
21 */ |
|
22 attribute boolean forcePreviewPage; |
|
23 |
|
24 /** |
|
25 * Adds a URI to the user's specified external feed handler, or live |
|
26 * bookmarks. |
|
27 * @param uri |
|
28 * The uri of the feed to add. |
|
29 * @param title |
|
30 * The title of the feed to add. |
|
31 * @param subtitle |
|
32 * The subtitle of the feed to add. |
|
33 * @param feedType |
|
34 * The nsIFeed type of the feed. See nsIFeed.idl |
|
35 */ |
|
36 void addToClientReader(in AUTF8String uri, |
|
37 in AString title, |
|
38 in AString subtitle, |
|
39 in unsigned long feedType); |
|
40 |
|
41 /** |
|
42 * Registers a Feed Result object with a globally accessible service |
|
43 * so that it can be accessed by a singleton method outside the usual |
|
44 * flow of control in document loading. |
|
45 * |
|
46 * @param feedResult |
|
47 * An object implementing nsIFeedResult representing the feed. |
|
48 */ |
|
49 void addFeedResult(in nsIFeedResult feedResult); |
|
50 |
|
51 /** |
|
52 * Gets a Feed Handler object registered using addFeedResult. |
|
53 * |
|
54 * @param uri |
|
55 * The URI of the feed a handler is being requested for |
|
56 */ |
|
57 nsIFeedResult getFeedResult(in nsIURI uri); |
|
58 |
|
59 /** |
|
60 * Unregisters a Feed Handler object registered using addFeedResult. |
|
61 * @param uri |
|
62 * The feed URI the handler was registered under. This must be |
|
63 * the same *instance* the feed was registered under. |
|
64 */ |
|
65 void removeFeedResult(in nsIURI uri); |
|
66 }; |