This file is indexed.

/usr/include/thunderbird/nsIMsgMessageService.h is in thunderbird-dev 1:52.8.0-1~deb8u1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsIMsgMessageService.idl
 */

#ifndef __gen_nsIMsgMessageService_h__
#define __gen_nsIMsgMessageService_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

#ifndef __gen_MailNewsTypes2_h__
#include "MailNewsTypes2.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIURI; /* forward declaration */

class nsIUrlListener; /* forward declaration */

class nsIStreamListener; /* forward declaration */

class nsIMsgWindow; /* forward declaration */

class nsIFile; /* forward declaration */

class nsIMsgFolder; /* forward declaration */

class nsIMsgSearchSession; /* forward declaration */

class nsIMsgDBHdr; /* forward declaration */

class nsIStreamConverter; /* forward declaration */

class nsICacheEntry; /* forward declaration */

#include "MailNewsTypes.h"

/* starting interface:    nsIMsgMessageService */
#define NS_IMSGMESSAGESERVICE_IID_STR "3aa7080a-73ac-4394-9636-fc00e182319b"

#define NS_IMSGMESSAGESERVICE_IID \
  {0x3aa7080a, 0x73ac, 0x4394, \
    { 0x96, 0x36, 0xfc, 0x00, 0xe1, 0x82, 0x31, 0x9b }}

class NS_NO_VTABLE nsIMsgMessageService : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGMESSAGESERVICE_IID)

  /* void CopyMessage (in string aSrcURI, in nsIStreamListener aCopyListener, in boolean aMoveMessage, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow, out nsIURI aURL); */
  NS_IMETHOD CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL) = 0;

  /* nsIURI CopyMessages (in unsigned long aNumKeys, [array, size_is (aNumKeys)] in nsMsgKey aKeys, in nsIMsgFolder srcFolder, in nsIStreamListener aCopyListener, in boolean aMoveMessage, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow); */
  NS_IMETHOD CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval) = 0;

  /* void DisplayMessage (in string aMessageURI, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, in string aCharsetOverride, out nsIURI aURL); */
  NS_IMETHOD DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL) = 0;

  /* void openAttachment (in string aContentType, in string aFileName, in string aUrl, in string aMessageUri, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener); */
  NS_IMETHOD OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener) = 0;

  /* void SaveMessageToDisk (in string aMessageURI, in nsIFile aFile, in boolean aGenerateDummyEnvelope, in nsIUrlListener aUrlListener, out nsIURI aURL, in boolean canonicalLineEnding, in nsIMsgWindow aMsgWindow); */
  NS_IMETHOD SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow) = 0;

  /* void GetUrlForUri (in string aMessageURI, out nsIURI aURL, in nsIMsgWindow aMsgWindow); */
  NS_IMETHOD GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow) = 0;

  /* void DisplayMessageForPrinting (in string aMessageURI, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, out nsIURI aURL); */
  NS_IMETHOD DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL) = 0;

  /* void Search (in nsIMsgSearchSession aSearchSession, in nsIMsgWindow aMsgWindow, in nsIMsgFolder aMsgFolder, in string aSearchUri); */
  NS_IMETHOD Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri) = 0;

  /* nsIURI streamMessage (in string aMessageURI, in nsISupports aConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, in boolean aConvertData, in ACString aAdditionalHeader, [optional] in boolean aLocalOnly); */
  NS_IMETHOD StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval) = 0;

  /* nsIURI streamHeaders (in string aMessageURI, in nsIStreamListener aConsumer, in nsIUrlListener aUrlListener, [optional] in boolean aLocalOnly); */
  NS_IMETHOD StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval) = 0;

  /* boolean isMsgInMemCache (in nsIURI aUrl, in nsIMsgFolder aFolder); */
  NS_IMETHOD IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval) = 0;

  /* nsIMsgDBHdr messageURIToMsgHdr (in string uri); */
  NS_IMETHOD MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgMessageService, NS_IMSGMESSAGESERVICE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGMESSAGESERVICE \
  NS_IMETHOD CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL) override; \
  NS_IMETHOD CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval) override; \
  NS_IMETHOD DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL) override; \
  NS_IMETHOD OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener) override; \
  NS_IMETHOD SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow) override; \
  NS_IMETHOD GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow) override; \
  NS_IMETHOD DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL) override; \
  NS_IMETHOD Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri) override; \
  NS_IMETHOD StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval) override; \
  NS_IMETHOD StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval) override; \
  NS_IMETHOD IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval) override; \
  NS_IMETHOD MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIMSGMESSAGESERVICE \
  NS_METHOD CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL); \
  NS_METHOD CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval); \
  NS_METHOD DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL); \
  NS_METHOD OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener); \
  NS_METHOD SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow); \
  NS_METHOD GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow); \
  NS_METHOD DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL); \
  NS_METHOD Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri); \
  NS_METHOD StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval); \
  NS_METHOD StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval); \
  NS_METHOD IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval); \
  NS_METHOD MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGMESSAGESERVICE(_to) \
  NS_IMETHOD CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL) override { return _to CopyMessage(aSrcURI, aCopyListener, aMoveMessage, aUrlListener, aMsgWindow, aURL); } \
  NS_IMETHOD CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval) override { return _to CopyMessages(aNumKeys, aKeys, srcFolder, aCopyListener, aMoveMessage, aUrlListener, aMsgWindow, _retval); } \
  NS_IMETHOD DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL) override { return _to DisplayMessage(aMessageURI, aDisplayConsumer, aMsgWindow, aUrlListener, aCharsetOverride, aURL); } \
  NS_IMETHOD OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener) override { return _to OpenAttachment(aContentType, aFileName, aUrl, aMessageUri, aDisplayConsumer, aMsgWindow, aUrlListener); } \
  NS_IMETHOD SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow) override { return _to SaveMessageToDisk(aMessageURI, aFile, aGenerateDummyEnvelope, aUrlListener, aURL, canonicalLineEnding, aMsgWindow); } \
  NS_IMETHOD GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow) override { return _to GetUrlForUri(aMessageURI, aURL, aMsgWindow); } \
  NS_IMETHOD DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL) override { return _to DisplayMessageForPrinting(aMessageURI, aDisplayConsumer, aMsgWindow, aUrlListener, aURL); } \
  NS_IMETHOD Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri) override { return _to Search(aSearchSession, aMsgWindow, aMsgFolder, aSearchUri); } \
  NS_IMETHOD StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval) override { return _to StreamMessage(aMessageURI, aConsumer, aMsgWindow, aUrlListener, aConvertData, aAdditionalHeader, aLocalOnly, _retval); } \
  NS_IMETHOD StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval) override { return _to StreamHeaders(aMessageURI, aConsumer, aUrlListener, aLocalOnly, _retval); } \
  NS_IMETHOD IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval) override { return _to IsMsgInMemCache(aUrl, aFolder, _retval); } \
  NS_IMETHOD MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval) override { return _to MessageURIToMsgHdr(uri, _retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGMESSAGESERVICE(_to) \
  NS_IMETHOD CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CopyMessage(aSrcURI, aCopyListener, aMoveMessage, aUrlListener, aMsgWindow, aURL); } \
  NS_IMETHOD CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->CopyMessages(aNumKeys, aKeys, srcFolder, aCopyListener, aMoveMessage, aUrlListener, aMsgWindow, _retval); } \
  NS_IMETHOD DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DisplayMessage(aMessageURI, aDisplayConsumer, aMsgWindow, aUrlListener, aCharsetOverride, aURL); } \
  NS_IMETHOD OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener) override { return !_to ? NS_ERROR_NULL_POINTER : _to->OpenAttachment(aContentType, aFileName, aUrl, aMessageUri, aDisplayConsumer, aMsgWindow, aUrlListener); } \
  NS_IMETHOD SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SaveMessageToDisk(aMessageURI, aFile, aGenerateDummyEnvelope, aUrlListener, aURL, canonicalLineEnding, aMsgWindow); } \
  NS_IMETHOD GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUrlForUri(aMessageURI, aURL, aMsgWindow); } \
  NS_IMETHOD DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL) override { return !_to ? NS_ERROR_NULL_POINTER : _to->DisplayMessageForPrinting(aMessageURI, aDisplayConsumer, aMsgWindow, aUrlListener, aURL); } \
  NS_IMETHOD Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri) override { return !_to ? NS_ERROR_NULL_POINTER : _to->Search(aSearchSession, aMsgWindow, aMsgFolder, aSearchUri); } \
  NS_IMETHOD StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->StreamMessage(aMessageURI, aConsumer, aMsgWindow, aUrlListener, aConvertData, aAdditionalHeader, aLocalOnly, _retval); } \
  NS_IMETHOD StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->StreamHeaders(aMessageURI, aConsumer, aUrlListener, aLocalOnly, _retval); } \
  NS_IMETHOD IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->IsMsgInMemCache(aUrl, aFolder, _retval); } \
  NS_IMETHOD MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->MessageURIToMsgHdr(uri, _retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsMsgMessageService : public nsIMsgMessageService
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGMESSAGESERVICE

  nsMsgMessageService();

private:
  ~nsMsgMessageService();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgMessageService, nsIMsgMessageService)

nsMsgMessageService::nsMsgMessageService()
{
  /* member initializers and constructor code */
}

nsMsgMessageService::~nsMsgMessageService()
{
  /* destructor code */
}

/* void CopyMessage (in string aSrcURI, in nsIStreamListener aCopyListener, in boolean aMoveMessage, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow, out nsIURI aURL); */
NS_IMETHODIMP nsMsgMessageService::CopyMessage(const char * aSrcURI, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *aURL)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIURI CopyMessages (in unsigned long aNumKeys, [array, size_is (aNumKeys)] in nsMsgKey aKeys, in nsIMsgFolder srcFolder, in nsIStreamListener aCopyListener, in boolean aMoveMessage, in nsIUrlListener aUrlListener, in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgMessageService::CopyMessages(uint32_t aNumKeys, nsMsgKey *aKeys, nsIMsgFolder *srcFolder, nsIStreamListener *aCopyListener, bool aMoveMessage, nsIUrlListener *aUrlListener, nsIMsgWindow *aMsgWindow, nsIURI * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void DisplayMessage (in string aMessageURI, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, in string aCharsetOverride, out nsIURI aURL); */
NS_IMETHODIMP nsMsgMessageService::DisplayMessage(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, const char * aCharsetOverride, nsIURI * *aURL)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void openAttachment (in string aContentType, in string aFileName, in string aUrl, in string aMessageUri, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener); */
NS_IMETHODIMP nsMsgMessageService::OpenAttachment(const char * aContentType, const char * aFileName, const char * aUrl, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void SaveMessageToDisk (in string aMessageURI, in nsIFile aFile, in boolean aGenerateDummyEnvelope, in nsIUrlListener aUrlListener, out nsIURI aURL, in boolean canonicalLineEnding, in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgMessageService::SaveMessageToDisk(const char * aMessageURI, nsIFile *aFile, bool aGenerateDummyEnvelope, nsIUrlListener *aUrlListener, nsIURI * *aURL, bool canonicalLineEnding, nsIMsgWindow *aMsgWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void GetUrlForUri (in string aMessageURI, out nsIURI aURL, in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgMessageService::GetUrlForUri(const char * aMessageURI, nsIURI * *aURL, nsIMsgWindow *aMsgWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void DisplayMessageForPrinting (in string aMessageURI, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, out nsIURI aURL); */
NS_IMETHODIMP nsMsgMessageService::DisplayMessageForPrinting(const char * aMessageURI, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *aURL)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void Search (in nsIMsgSearchSession aSearchSession, in nsIMsgWindow aMsgWindow, in nsIMsgFolder aMsgFolder, in string aSearchUri); */
NS_IMETHODIMP nsMsgMessageService::Search(nsIMsgSearchSession *aSearchSession, nsIMsgWindow *aMsgWindow, nsIMsgFolder *aMsgFolder, const char * aSearchUri)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIURI streamMessage (in string aMessageURI, in nsISupports aConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener, in boolean aConvertData, in ACString aAdditionalHeader, [optional] in boolean aLocalOnly); */
NS_IMETHODIMP nsMsgMessageService::StreamMessage(const char * aMessageURI, nsISupports *aConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, bool aConvertData, const nsACString & aAdditionalHeader, bool aLocalOnly, nsIURI * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIURI streamHeaders (in string aMessageURI, in nsIStreamListener aConsumer, in nsIUrlListener aUrlListener, [optional] in boolean aLocalOnly); */
NS_IMETHODIMP nsMsgMessageService::StreamHeaders(const char * aMessageURI, nsIStreamListener *aConsumer, nsIUrlListener *aUrlListener, bool aLocalOnly, nsIURI * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean isMsgInMemCache (in nsIURI aUrl, in nsIMsgFolder aFolder); */
NS_IMETHODIMP nsMsgMessageService::IsMsgInMemCache(nsIURI *aUrl, nsIMsgFolder *aFolder, bool *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgDBHdr messageURIToMsgHdr (in string uri); */
NS_IMETHODIMP nsMsgMessageService::MessageURIToMsgHdr(const char * uri, nsIMsgDBHdr * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


/* starting interface:    nsIMsgMessageFetchPartService */
#define NS_IMSGMESSAGEFETCHPARTSERVICE_IID_STR "3728c255-480c-11d4-98d0-001083010e9b"

#define NS_IMSGMESSAGEFETCHPARTSERVICE_IID \
  {0x3728c255, 0x480c, 0x11d4, \
    { 0x98, 0xd0, 0x00, 0x10, 0x83, 0x01, 0x0e, 0x9b }}

class NS_NO_VTABLE nsIMsgMessageFetchPartService : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGMESSAGEFETCHPARTSERVICE_IID)

  /* nsIURI fetchMimePart (in nsIURI aURI, in string aMessageUri, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener); */
  NS_IMETHOD FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgMessageFetchPartService, NS_IMSGMESSAGEFETCHPARTSERVICE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGMESSAGEFETCHPARTSERVICE \
  NS_IMETHOD FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIMSGMESSAGEFETCHPARTSERVICE \
  NS_METHOD FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGMESSAGEFETCHPARTSERVICE(_to) \
  NS_IMETHOD FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval) override { return _to FetchMimePart(aURI, aMessageUri, aDisplayConsumer, aMsgWindow, aUrlListener, _retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGMESSAGEFETCHPARTSERVICE(_to) \
  NS_IMETHOD FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->FetchMimePart(aURI, aMessageUri, aDisplayConsumer, aMsgWindow, aUrlListener, _retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsMsgMessageFetchPartService : public nsIMsgMessageFetchPartService
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGMESSAGEFETCHPARTSERVICE

  nsMsgMessageFetchPartService();

private:
  ~nsMsgMessageFetchPartService();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgMessageFetchPartService, nsIMsgMessageFetchPartService)

nsMsgMessageFetchPartService::nsMsgMessageFetchPartService()
{
  /* member initializers and constructor code */
}

nsMsgMessageFetchPartService::~nsMsgMessageFetchPartService()
{
  /* destructor code */
}

/* nsIURI fetchMimePart (in nsIURI aURI, in string aMessageUri, in nsISupports aDisplayConsumer, in nsIMsgWindow aMsgWindow, in nsIUrlListener aUrlListener); */
NS_IMETHODIMP nsMsgMessageFetchPartService::FetchMimePart(nsIURI *aURI, const char * aMessageUri, nsISupports *aDisplayConsumer, nsIMsgWindow *aMsgWindow, nsIUrlListener *aUrlListener, nsIURI * *_retval)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_nsIMsgMessageService_h__ */