Line data Source code
1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM ../../../dist/idl/nsIPluginHost.idl
3 : */
4 :
5 : #ifndef __gen_nsIPluginHost_h__
6 : #define __gen_nsIPluginHost_h__
7 :
8 :
9 : #ifndef __gen_nspluginroot_h__
10 : #include "nspluginroot.h"
11 : #endif
12 :
13 : #ifndef __gen_nsISupports_h__
14 : #include "nsISupports.h"
15 : #endif
16 :
17 : #ifndef __gen_nsIPluginTag_h__
18 : #include "nsIPluginTag.h"
19 : #endif
20 :
21 : #include "js/Value.h"
22 :
23 : /* For IDL files that don't want to include root IDL files. */
24 : #ifndef NS_NO_VTABLE
25 : #define NS_NO_VTABLE
26 : #endif
27 : #define MOZ_PLUGIN_HOST_CONTRACTID \
28 : "@mozilla.org/plugin/host;1"
29 :
30 : /* starting interface: nsIClearSiteDataCallback */
31 : #define NS_ICLEARSITEDATACALLBACK_IID_STR "9c311778-7c2c-4ad8-b439-b8a2786a20dd"
32 :
33 : #define NS_ICLEARSITEDATACALLBACK_IID \
34 : {0x9c311778, 0x7c2c, 0x4ad8, \
35 : { 0xb4, 0x39, 0xb8, 0xa2, 0x78, 0x6a, 0x20, 0xdd }}
36 :
37 0 : class NS_NO_VTABLE nsIClearSiteDataCallback : public nsISupports {
38 : public:
39 :
40 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICLEARSITEDATACALLBACK_IID)
41 :
42 : /* void callback (in nsresult rv); */
43 : NS_IMETHOD Callback(nsresult rv) = 0;
44 :
45 : };
46 :
47 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIClearSiteDataCallback, NS_ICLEARSITEDATACALLBACK_IID)
48 :
49 : /* Use this macro when declaring classes that implement this interface. */
50 : #define NS_DECL_NSICLEARSITEDATACALLBACK \
51 : NS_IMETHOD Callback(nsresult rv) override;
52 :
53 : /* Use this macro when declaring the members of this interface when the
54 : class doesn't implement the interface. This is useful for forwarding. */
55 : #define NS_DECL_NON_VIRTUAL_NSICLEARSITEDATACALLBACK \
56 : nsresult Callback(nsresult rv);
57 :
58 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
59 : #define NS_FORWARD_NSICLEARSITEDATACALLBACK(_to) \
60 : NS_IMETHOD Callback(nsresult rv) override { return _to Callback(rv); }
61 :
62 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
63 : #define NS_FORWARD_SAFE_NSICLEARSITEDATACALLBACK(_to) \
64 : NS_IMETHOD Callback(nsresult rv) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Callback(rv); }
65 :
66 : #if 0
67 : /* Use the code below as a template for the implementation class for this interface. */
68 :
69 : /* Header file */
70 : class nsClearSiteDataCallback : public nsIClearSiteDataCallback
71 : {
72 : public:
73 : NS_DECL_ISUPPORTS
74 : NS_DECL_NSICLEARSITEDATACALLBACK
75 :
76 : nsClearSiteDataCallback();
77 :
78 : private:
79 : ~nsClearSiteDataCallback();
80 :
81 : protected:
82 : /* additional members */
83 : };
84 :
85 : /* Implementation file */
86 : NS_IMPL_ISUPPORTS(nsClearSiteDataCallback, nsIClearSiteDataCallback)
87 :
88 : nsClearSiteDataCallback::nsClearSiteDataCallback()
89 : {
90 : /* member initializers and constructor code */
91 : }
92 :
93 : nsClearSiteDataCallback::~nsClearSiteDataCallback()
94 : {
95 : /* destructor code */
96 : }
97 :
98 : /* void callback (in nsresult rv); */
99 : NS_IMETHODIMP nsClearSiteDataCallback::Callback(nsresult rv)
100 : {
101 : return NS_ERROR_NOT_IMPLEMENTED;
102 : }
103 :
104 : /* End of implementation class template. */
105 : #endif
106 :
107 :
108 : /* starting interface: nsIPluginHost */
109 : #define NS_IPLUGINHOST_IID_STR "f938f5ba-7093-42cd-a559-af8039d99204"
110 :
111 : #define NS_IPLUGINHOST_IID \
112 : {0xf938f5ba, 0x7093, 0x42cd, \
113 : { 0xa5, 0x59, 0xaf, 0x80, 0x39, 0xd9, 0x92, 0x04 }}
114 :
115 3 : class NS_NO_VTABLE nsIPluginHost : public nsISupports {
116 : public:
117 :
118 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPLUGINHOST_IID)
119 :
120 : /* void reloadPlugins (); */
121 : NS_IMETHOD ReloadPlugins(void) = 0;
122 :
123 : /* void getPluginTags ([optional] out unsigned long aPluginCount, [array, size_is (aPluginCount), retval] out nsIPluginTag aResults); */
124 : NS_IMETHOD GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults) = 0;
125 :
126 : enum {
127 : FLAG_CLEAR_ALL = 0U,
128 : FLAG_CLEAR_CACHE = 1U,
129 : EXCLUDE_NONE = 0U,
130 : EXCLUDE_DISABLED = 1U,
131 : EXCLUDE_FAKE = 2U
132 : };
133 :
134 : /* void clearSiteData (in nsIPluginTag plugin, in AUTF8String domain, in uint64_t flags, in int64_t maxAge, in nsIClearSiteDataCallback callback); */
135 : NS_IMETHOD ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback) = 0;
136 :
137 : /* boolean siteHasData (in nsIPluginTag plugin, in AUTF8String domain); */
138 : NS_IMETHOD SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval) = 0;
139 :
140 : /* ACString getPermissionStringForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
141 : NS_IMETHOD GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval) = 0;
142 :
143 : /* ACString getPermissionStringForTag (in nsIPluginTag tag, [optional] in uint32_t excludeFlags); */
144 : NS_IMETHOD GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval) = 0;
145 :
146 : /* nsIPluginTag getPluginTagForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
147 : NS_IMETHOD GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval) = 0;
148 :
149 : /* unsigned long getStateForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
150 : NS_IMETHOD GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval) = 0;
151 :
152 : /* uint32_t getBlocklistStateForType (in AUTF8String aMimeType, [optional] in uint32_t excludeFlags); */
153 : NS_IMETHOD GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval) = 0;
154 :
155 : /* [implicit_jscontext] nsIFakePluginTag registerFakePlugin (in jsval initDictionary); */
156 : NS_IMETHOD RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval) = 0;
157 :
158 : /* nsIFakePluginTag getFakePlugin (in AUTF8String mimeType); */
159 : NS_IMETHOD GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval) = 0;
160 :
161 : /* void unregisterFakePlugin (in AUTF8String handlerURI); */
162 : NS_IMETHOD UnregisterFakePlugin(const nsACString & handlerURI) = 0;
163 :
164 : };
165 :
166 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIPluginHost, NS_IPLUGINHOST_IID)
167 :
168 : /* Use this macro when declaring classes that implement this interface. */
169 : #define NS_DECL_NSIPLUGINHOST \
170 : NS_IMETHOD ReloadPlugins(void) override; \
171 : NS_IMETHOD GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults) override; \
172 : NS_IMETHOD ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback) override; \
173 : NS_IMETHOD SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval) override; \
174 : NS_IMETHOD GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval) override; \
175 : NS_IMETHOD GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval) override; \
176 : NS_IMETHOD GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval) override; \
177 : NS_IMETHOD GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval) override; \
178 : NS_IMETHOD GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval) override; \
179 : NS_IMETHOD RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval) override; \
180 : NS_IMETHOD GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval) override; \
181 : NS_IMETHOD UnregisterFakePlugin(const nsACString & handlerURI) override;
182 :
183 : /* Use this macro when declaring the members of this interface when the
184 : class doesn't implement the interface. This is useful for forwarding. */
185 : #define NS_DECL_NON_VIRTUAL_NSIPLUGINHOST \
186 : nsresult ReloadPlugins(void); \
187 : nsresult GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults); \
188 : nsresult ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback); \
189 : nsresult SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval); \
190 : nsresult GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval); \
191 : nsresult GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval); \
192 : nsresult GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval); \
193 : nsresult GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval); \
194 : nsresult GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval); \
195 : nsresult RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval); \
196 : nsresult GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval); \
197 : nsresult UnregisterFakePlugin(const nsACString & handlerURI);
198 :
199 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
200 : #define NS_FORWARD_NSIPLUGINHOST(_to) \
201 : NS_IMETHOD ReloadPlugins(void) override { return _to ReloadPlugins(); } \
202 : NS_IMETHOD GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults) override { return _to GetPluginTags(aPluginCount, aResults); } \
203 : NS_IMETHOD ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback) override { return _to ClearSiteData(plugin, domain, flags, maxAge, callback); } \
204 : NS_IMETHOD SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval) override { return _to SiteHasData(plugin, domain, _retval); } \
205 : NS_IMETHOD GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval) override { return _to GetPermissionStringForType(mimeType, excludeFlags, _retval); } \
206 : NS_IMETHOD GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval) override { return _to GetPermissionStringForTag(tag, excludeFlags, _retval); } \
207 : NS_IMETHOD GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval) override { return _to GetPluginTagForType(mimeType, excludeFlags, _retval); } \
208 : NS_IMETHOD GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval) override { return _to GetStateForType(mimeType, excludeFlags, _retval); } \
209 : NS_IMETHOD GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval) override { return _to GetBlocklistStateForType(aMimeType, excludeFlags, _retval); } \
210 : NS_IMETHOD RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval) override { return _to RegisterFakePlugin(initDictionary, cx, _retval); } \
211 : NS_IMETHOD GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval) override { return _to GetFakePlugin(mimeType, _retval); } \
212 : NS_IMETHOD UnregisterFakePlugin(const nsACString & handlerURI) override { return _to UnregisterFakePlugin(handlerURI); }
213 :
214 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
215 : #define NS_FORWARD_SAFE_NSIPLUGINHOST(_to) \
216 : NS_IMETHOD ReloadPlugins(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ReloadPlugins(); } \
217 : NS_IMETHOD GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPluginTags(aPluginCount, aResults); } \
218 : NS_IMETHOD ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback) override { return !_to ? NS_ERROR_NULL_POINTER : _to->ClearSiteData(plugin, domain, flags, maxAge, callback); } \
219 : NS_IMETHOD SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SiteHasData(plugin, domain, _retval); } \
220 : NS_IMETHOD GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPermissionStringForType(mimeType, excludeFlags, _retval); } \
221 : NS_IMETHOD GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPermissionStringForTag(tag, excludeFlags, _retval); } \
222 : NS_IMETHOD GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPluginTagForType(mimeType, excludeFlags, _retval); } \
223 : NS_IMETHOD GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetStateForType(mimeType, excludeFlags, _retval); } \
224 : NS_IMETHOD GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBlocklistStateForType(aMimeType, excludeFlags, _retval); } \
225 : NS_IMETHOD RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->RegisterFakePlugin(initDictionary, cx, _retval); } \
226 : NS_IMETHOD GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFakePlugin(mimeType, _retval); } \
227 : NS_IMETHOD UnregisterFakePlugin(const nsACString & handlerURI) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UnregisterFakePlugin(handlerURI); }
228 :
229 : #if 0
230 : /* Use the code below as a template for the implementation class for this interface. */
231 :
232 : /* Header file */
233 : class nsPluginHost : public nsIPluginHost
234 : {
235 : public:
236 : NS_DECL_ISUPPORTS
237 : NS_DECL_NSIPLUGINHOST
238 :
239 : nsPluginHost();
240 :
241 : private:
242 : ~nsPluginHost();
243 :
244 : protected:
245 : /* additional members */
246 : };
247 :
248 : /* Implementation file */
249 : NS_IMPL_ISUPPORTS(nsPluginHost, nsIPluginHost)
250 :
251 : nsPluginHost::nsPluginHost()
252 : {
253 : /* member initializers and constructor code */
254 : }
255 :
256 : nsPluginHost::~nsPluginHost()
257 : {
258 : /* destructor code */
259 : }
260 :
261 : /* void reloadPlugins (); */
262 : NS_IMETHODIMP nsPluginHost::ReloadPlugins()
263 : {
264 : return NS_ERROR_NOT_IMPLEMENTED;
265 : }
266 :
267 : /* void getPluginTags ([optional] out unsigned long aPluginCount, [array, size_is (aPluginCount), retval] out nsIPluginTag aResults); */
268 : NS_IMETHODIMP nsPluginHost::GetPluginTags(uint32_t *aPluginCount, nsIPluginTag * **aResults)
269 : {
270 : return NS_ERROR_NOT_IMPLEMENTED;
271 : }
272 :
273 : /* void clearSiteData (in nsIPluginTag plugin, in AUTF8String domain, in uint64_t flags, in int64_t maxAge, in nsIClearSiteDataCallback callback); */
274 : NS_IMETHODIMP nsPluginHost::ClearSiteData(nsIPluginTag *plugin, const nsACString & domain, uint64_t flags, int64_t maxAge, nsIClearSiteDataCallback *callback)
275 : {
276 : return NS_ERROR_NOT_IMPLEMENTED;
277 : }
278 :
279 : /* boolean siteHasData (in nsIPluginTag plugin, in AUTF8String domain); */
280 : NS_IMETHODIMP nsPluginHost::SiteHasData(nsIPluginTag *plugin, const nsACString & domain, bool *_retval)
281 : {
282 : return NS_ERROR_NOT_IMPLEMENTED;
283 : }
284 :
285 : /* ACString getPermissionStringForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
286 : NS_IMETHODIMP nsPluginHost::GetPermissionStringForType(const nsACString & mimeType, uint32_t excludeFlags, nsACString & _retval)
287 : {
288 : return NS_ERROR_NOT_IMPLEMENTED;
289 : }
290 :
291 : /* ACString getPermissionStringForTag (in nsIPluginTag tag, [optional] in uint32_t excludeFlags); */
292 : NS_IMETHODIMP nsPluginHost::GetPermissionStringForTag(nsIPluginTag *tag, uint32_t excludeFlags, nsACString & _retval)
293 : {
294 : return NS_ERROR_NOT_IMPLEMENTED;
295 : }
296 :
297 : /* nsIPluginTag getPluginTagForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
298 : NS_IMETHODIMP nsPluginHost::GetPluginTagForType(const nsACString & mimeType, uint32_t excludeFlags, nsIPluginTag * *_retval)
299 : {
300 : return NS_ERROR_NOT_IMPLEMENTED;
301 : }
302 :
303 : /* unsigned long getStateForType (in AUTF8String mimeType, [optional] in uint32_t excludeFlags); */
304 : NS_IMETHODIMP nsPluginHost::GetStateForType(const nsACString & mimeType, uint32_t excludeFlags, uint32_t *_retval)
305 : {
306 : return NS_ERROR_NOT_IMPLEMENTED;
307 : }
308 :
309 : /* uint32_t getBlocklistStateForType (in AUTF8String aMimeType, [optional] in uint32_t excludeFlags); */
310 : NS_IMETHODIMP nsPluginHost::GetBlocklistStateForType(const nsACString & aMimeType, uint32_t excludeFlags, uint32_t *_retval)
311 : {
312 : return NS_ERROR_NOT_IMPLEMENTED;
313 : }
314 :
315 : /* [implicit_jscontext] nsIFakePluginTag registerFakePlugin (in jsval initDictionary); */
316 : NS_IMETHODIMP nsPluginHost::RegisterFakePlugin(JS::HandleValue initDictionary, JSContext* cx, nsIFakePluginTag * *_retval)
317 : {
318 : return NS_ERROR_NOT_IMPLEMENTED;
319 : }
320 :
321 : /* nsIFakePluginTag getFakePlugin (in AUTF8String mimeType); */
322 : NS_IMETHODIMP nsPluginHost::GetFakePlugin(const nsACString & mimeType, nsIFakePluginTag * *_retval)
323 : {
324 : return NS_ERROR_NOT_IMPLEMENTED;
325 : }
326 :
327 : /* void unregisterFakePlugin (in AUTF8String handlerURI); */
328 : NS_IMETHODIMP nsPluginHost::UnregisterFakePlugin(const nsACString & handlerURI)
329 : {
330 : return NS_ERROR_NOT_IMPLEMENTED;
331 : }
332 :
333 : /* End of implementation class template. */
334 : #endif
335 :
336 :
337 : #endif /* __gen_nsIPluginHost_h__ */
|