37 // ----------------------------------------------------------------------------- |
38 // ----------------------------------------------------------------------------- |
38 // CFSMailMessage::NewLC |
39 // CFSMailMessage::NewLC |
39 // ----------------------------------------------------------------------------- |
40 // ----------------------------------------------------------------------------- |
40 EXPORT_C CFSMailMessage * CFSMailMessage::NewLC(TFSMailMsgId aMessageId) |
41 EXPORT_C CFSMailMessage * CFSMailMessage::NewLC(TFSMailMsgId aMessageId) |
41 { |
42 { |
42 FUNC_LOG; |
43 NM_FUNCTION; |
|
44 |
43 CFSMailMessage* message = new (ELeave) CFSMailMessage(); |
45 CFSMailMessage* message = new (ELeave) CFSMailMessage(); |
44 CleanupStack:: PushL(message); |
46 CleanupStack:: PushL(message); |
45 message->ConstructL( aMessageId ); |
47 message->ConstructL( aMessageId ); |
46 return message; |
48 return message; |
47 } |
49 } |
49 // ----------------------------------------------------------------------------- |
51 // ----------------------------------------------------------------------------- |
50 // CFSMailMessage::NewL |
52 // CFSMailMessage::NewL |
51 // ----------------------------------------------------------------------------- |
53 // ----------------------------------------------------------------------------- |
52 EXPORT_C CFSMailMessage * CFSMailMessage::NewL(TFSMailMsgId aMessageId) |
54 EXPORT_C CFSMailMessage * CFSMailMessage::NewL(TFSMailMsgId aMessageId) |
53 { |
55 { |
54 FUNC_LOG; |
56 NM_FUNCTION; |
|
57 |
55 CFSMailMessage* message = CFSMailMessage::NewLC(aMessageId); |
58 CFSMailMessage* message = CFSMailMessage::NewLC(aMessageId); |
56 CleanupStack:: Pop(message); |
59 CleanupStack:: Pop(message); |
57 return message; |
60 return message; |
58 } |
61 } |
59 |
62 |
61 // ----------------------------------------------------------------------------- |
64 // ----------------------------------------------------------------------------- |
62 // CFSMailMessage::NewL |
65 // CFSMailMessage::NewL |
63 // ----------------------------------------------------------------------------- |
66 // ----------------------------------------------------------------------------- |
64 EXPORT_C CFSMailMessage* CFSMailMessage::NewL( const NmMessage &aMessage ) |
67 EXPORT_C CFSMailMessage* CFSMailMessage::NewL( const NmMessage &aMessage ) |
65 { |
68 { |
66 FUNC_LOG; |
69 NM_FUNCTION; |
|
70 |
67 CFSMailMessage* self = new (ELeave) CFSMailMessage(); |
71 CFSMailMessage* self = new (ELeave) CFSMailMessage(); |
68 CleanupStack::PushL(self); |
72 CleanupStack::PushL(self); |
69 self->ConstructL(aMessage); |
73 self->ConstructL(aMessage); |
70 CleanupStack::Pop(self); |
74 CleanupStack::Pop(self); |
71 return self; |
75 return self; |
75 // ----------------------------------------------------------------------------- |
79 // ----------------------------------------------------------------------------- |
76 // CFSMailMessage::ConstructL |
80 // CFSMailMessage::ConstructL |
77 // ----------------------------------------------------------------------------- |
81 // ----------------------------------------------------------------------------- |
78 void CFSMailMessage::ConstructL( TFSMailMsgId aMessageId ) |
82 void CFSMailMessage::ConstructL( TFSMailMsgId aMessageId ) |
79 { |
83 { |
80 FUNC_LOG; |
84 NM_FUNCTION; |
|
85 |
81 // <qmail> |
86 // <qmail> |
82 // Base class initialization |
87 // Base class initialization |
83 CFSMailMessagePart::ConstructL( aMessageId, TFSMailMsgId() ); |
88 CFSMailMessagePart::ConstructL( aMessageId, TFSMailMsgId() ); |
84 // </qmail> |
89 // </qmail> |
85 } |
90 } |
88 // ----------------------------------------------------------------------------- |
93 // ----------------------------------------------------------------------------- |
89 // CFSMailMessage::ConstructL |
94 // CFSMailMessage::ConstructL |
90 // ----------------------------------------------------------------------------- |
95 // ----------------------------------------------------------------------------- |
91 void CFSMailMessage::ConstructL( const NmMessage &aMessage ) |
96 void CFSMailMessage::ConstructL( const NmMessage &aMessage ) |
92 { |
97 { |
93 FUNC_LOG; |
98 NM_FUNCTION; |
|
99 |
94 // Base class initialization |
100 // Base class initialization |
95 |
101 |
96 CFSMailMessagePart::ConstructL( aMessage, aMessage.envelope() ); |
102 CFSMailMessagePart::ConstructL( aMessage, aMessage.envelope() ); |
97 } |
103 } |
98 // </qmail> |
104 // </qmail> |
100 // ----------------------------------------------------------------------------- |
106 // ----------------------------------------------------------------------------- |
101 // CFSMailMessage::CFSMailMessage |
107 // CFSMailMessage::CFSMailMessage |
102 // ----------------------------------------------------------------------------- |
108 // ----------------------------------------------------------------------------- |
103 CFSMailMessage::CFSMailMessage() : CFSMailMessagePart() |
109 CFSMailMessage::CFSMailMessage() : CFSMailMessagePart() |
104 { |
110 { |
105 FUNC_LOG; |
111 NM_FUNCTION; |
106 } |
112 } |
107 |
113 |
108 // ----------------------------------------------------------------------------- |
114 // ----------------------------------------------------------------------------- |
109 // CFSMailMessage::~CFSMailMessage |
115 // CFSMailMessage::~CFSMailMessage |
110 // ----------------------------------------------------------------------------- |
116 // ----------------------------------------------------------------------------- |
111 EXPORT_C CFSMailMessage::~CFSMailMessage() |
117 EXPORT_C CFSMailMessage::~CFSMailMessage() |
112 { |
118 { |
113 FUNC_LOG; |
119 NM_FUNCTION; |
|
120 |
114 // <qmail> |
121 // <qmail> |
115 iMessageBufferForAsyncOp.Reset(); |
122 iMessageBufferForAsyncOp.Reset(); |
116 // </qmail> |
123 // </qmail> |
117 } |
124 } |
118 |
125 |
119 // ----------------------------------------------------------------------------- |
126 // ----------------------------------------------------------------------------- |
120 // CFSMailMessage::SaveMessageL |
127 // CFSMailMessage::SaveMessageL |
121 // ----------------------------------------------------------------------------- |
128 // ----------------------------------------------------------------------------- |
122 EXPORT_C void CFSMailMessage::SaveMessageL() |
129 EXPORT_C void CFSMailMessage::SaveMessageL() |
123 { |
130 { |
124 FUNC_LOG; |
131 NM_FUNCTION; |
|
132 |
125 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
133 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
126 { |
134 { |
127 plugin->StoreMessageL(GetMailBoxId(),*this); |
135 plugin->StoreMessageL(GetMailBoxId(),*this); |
128 } |
136 } |
129 } |
137 } |
132 // ----------------------------------------------------------------------------- |
140 // ----------------------------------------------------------------------------- |
133 // CFSMailMessage::SaveMessageL |
141 // CFSMailMessage::SaveMessageL |
134 // ----------------------------------------------------------------------------- |
142 // ----------------------------------------------------------------------------- |
135 EXPORT_C TInt CFSMailMessage::SaveMessageL( MFSMailRequestObserver& aOperationObserver ) |
143 EXPORT_C TInt CFSMailMessage::SaveMessageL( MFSMailRequestObserver& aOperationObserver ) |
136 { |
144 { |
137 FUNC_LOG; |
145 NM_FUNCTION; |
138 |
146 |
139 CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId()); |
147 CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId()); |
140 TFSPendingRequest request = iRequestHandler->InitAsyncRequestL( |
148 TFSPendingRequest request = iRequestHandler->InitAsyncRequestL( |
141 GetMessageId().PluginId(), aOperationObserver); |
149 GetMessageId().PluginId(), aOperationObserver); |
142 MFSMailRequestObserver* observer = request.iObserver; |
150 MFSMailRequestObserver* observer = request.iObserver; |
158 // ----------------------------------------------------------------------------- |
166 // ----------------------------------------------------------------------------- |
159 // CFSMailMessage::SaveMessagePartsL |
167 // CFSMailMessage::SaveMessagePartsL |
160 // ----------------------------------------------------------------------------- |
168 // ----------------------------------------------------------------------------- |
161 EXPORT_C TInt CFSMailMessage::SaveMessagePartsL( MFSMailRequestObserver& aOperationObserver ) |
169 EXPORT_C TInt CFSMailMessage::SaveMessagePartsL( MFSMailRequestObserver& aOperationObserver ) |
162 { |
170 { |
163 FUNC_LOG; |
171 NM_FUNCTION; |
164 |
172 |
165 RPointerArray<CFSMailMessagePart> messageParts; |
173 RPointerArray<CFSMailMessagePart> messageParts; |
166 CleanupResetAndDestroyPushL(messageParts); |
174 CleanupResetAndDestroyPushL(messageParts); |
167 |
175 |
168 CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId()); |
176 CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId()); |
206 // CFSMailMessage::AddNewAttachmentL |
214 // CFSMailMessage::AddNewAttachmentL |
207 // ----------------------------------------------------------------------------- |
215 // ----------------------------------------------------------------------------- |
208 EXPORT_C CFSMailMessagePart* CFSMailMessage::AddNewAttachmentL( RFile& aFile, |
216 EXPORT_C CFSMailMessagePart* CFSMailMessage::AddNewAttachmentL( RFile& aFile, |
209 const TDesC8& aMimeType ) |
217 const TDesC8& aMimeType ) |
210 { |
218 { |
211 FUNC_LOG; |
219 NM_FUNCTION; |
212 |
220 |
213 CFSMailMessagePart* newPart = NULL; |
221 CFSMailMessagePart* newPart = NULL; |
214 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
222 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
215 { |
223 { |
216 TBuf<KMaxDataTypeLength> contentType; |
224 TBuf<KMaxDataTypeLength> contentType; |
257 // CFSMailMessage::AddNewAttachmentL |
265 // CFSMailMessage::AddNewAttachmentL |
258 // ----------------------------------------------------------------------------- |
266 // ----------------------------------------------------------------------------- |
259 EXPORT_C CFSMailMessagePart* CFSMailMessage::AddNewAttachmentL( const TDesC& aFilePath, |
267 EXPORT_C CFSMailMessagePart* CFSMailMessage::AddNewAttachmentL( const TDesC& aFilePath, |
260 const TFSMailMsgId /*aInsertBefore*/ ) |
268 const TFSMailMsgId /*aInsertBefore*/ ) |
261 { |
269 { |
262 FUNC_LOG; |
270 NM_FUNCTION; |
263 |
271 |
264 CFSMailMessagePart* newPart = NULL; |
272 CFSMailMessagePart* newPart = NULL; |
265 |
273 |
266 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
274 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
267 { |
275 { |
302 // CFSMailMessage::AddNewAttachmentL |
310 // CFSMailMessage::AddNewAttachmentL |
303 // ----------------------------------------------------------------------------- |
311 // ----------------------------------------------------------------------------- |
304 EXPORT_C TInt CFSMailMessage::AddNewAttachmentL( const TDesC& aFilePath, |
312 EXPORT_C TInt CFSMailMessage::AddNewAttachmentL( const TDesC& aFilePath, |
305 MFSMailRequestObserver& aOperationObserver) |
313 MFSMailRequestObserver& aOperationObserver) |
306 { |
314 { |
307 FUNC_LOG; |
315 NM_FUNCTION; |
|
316 |
308 TFSPendingRequest request; |
317 TFSPendingRequest request; |
309 |
318 |
310 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
319 if(CFSMailPlugin* plugin = iRequestHandler->GetPluginByUid(GetMessageId())) |
311 { |
320 { |
312 // init asynchronous request |
321 // init asynchronous request |
356 // CFSMailMessage::AttachmentListL |
365 // CFSMailMessage::AttachmentListL |
357 // ----------------------------------------------------------------------------- |
366 // ----------------------------------------------------------------------------- |
358 EXPORT_C void CFSMailMessage::AttachmentListL( |
367 EXPORT_C void CFSMailMessage::AttachmentListL( |
359 RPointerArray<CFSMailMessagePart>& aParts ) |
368 RPointerArray<CFSMailMessagePart>& aParts ) |
360 { |
369 { |
361 FUNC_LOG; |
370 NM_FUNCTION; |
|
371 |
362 // First list all message parts |
372 // First list all message parts |
363 AppendAttachmentsL( aParts ); |
373 AppendAttachmentsL( aParts ); |
364 |
374 |
365 // special case, if single part content type is not given, |
375 // special case, if single part content type is not given, |
366 // default type is text/plain |
376 // default type is text/plain |
418 // CFSMailMessage::PlainTextBodyPartL |
428 // CFSMailMessage::PlainTextBodyPartL |
419 // ----------------------------------------------------------------------------- |
429 // ----------------------------------------------------------------------------- |
420 EXPORT_C CFSMailMessagePart* CFSMailMessage::PlainTextBodyPartL( |
430 EXPORT_C CFSMailMessagePart* CFSMailMessage::PlainTextBodyPartL( |
421 TFSMailMessagePartDataSource aDataSource) |
431 TFSMailMessagePartDataSource aDataSource) |
422 { |
432 { |
423 FUNC_LOG; |
433 NM_FUNCTION; |
|
434 |
424 CFSMailMessagePart* part = FindBodyPartL(KFSMailContentTypeTextPlain, aDataSource); |
435 CFSMailMessagePart* part = FindBodyPartL(KFSMailContentTypeTextPlain, aDataSource); |
425 |
436 |
426 // special case, single part content type is not given |
437 // special case, single part content type is not given |
427 if(part == NULL && iMessageParts.Count() == 1 && iMessageParts[0]->GetContentType().Length() == 0) |
438 if(part == NULL && iMessageParts.Count() == 1 && iMessageParts[0]->GetContentType().Length() == 0) |
428 { |
439 { |
440 // CFSMailMessage::HtmlBodyPartL |
451 // CFSMailMessage::HtmlBodyPartL |
441 // ----------------------------------------------------------------------------- |
452 // ----------------------------------------------------------------------------- |
442 EXPORT_C CFSMailMessagePart* CFSMailMessage::HtmlBodyPartL( |
453 EXPORT_C CFSMailMessagePart* CFSMailMessage::HtmlBodyPartL( |
443 TFSMailMessagePartDataSource aDataSource) |
454 TFSMailMessagePartDataSource aDataSource) |
444 { |
455 { |
445 FUNC_LOG; |
456 NM_FUNCTION; |
|
457 |
446 CFSMailMessagePart* part = FindBodyPartL(KFSMailContentTypeTextHtml, aDataSource); |
458 CFSMailMessagePart* part = FindBodyPartL(KFSMailContentTypeTextHtml, aDataSource); |
447 iMessageParts.ResetAndDestroy(); |
459 iMessageParts.ResetAndDestroy(); |
448 iReadMessageParts = ETrue; |
460 iReadMessageParts = ETrue; |
449 return part; |
461 return part; |
450 } |
462 } |
454 // ----------------------------------------------------------------------------- |
466 // ----------------------------------------------------------------------------- |
455 // CFSMailMessage::IsMessageL |
467 // CFSMailMessage::IsMessageL |
456 // ----------------------------------------------------------------------------- |
468 // ----------------------------------------------------------------------------- |
457 EXPORT_C TBool CFSMailMessage::IsMessageL() const |
469 EXPORT_C TBool CFSMailMessage::IsMessageL() const |
458 { |
470 { |
459 FUNC_LOG; |
471 NM_FUNCTION; |
|
472 |
460 return CFSMailMessagePart::IsMessageL(); |
473 return CFSMailMessagePart::IsMessageL(); |
461 } |
474 } |
462 // </qmail> |
475 // </qmail> |
463 |
476 |
464 // ----------------------------------------------------------------------------- |
477 // ----------------------------------------------------------------------------- |
465 // CFSMailMessage::ContentTypeParameters() |
478 // CFSMailMessage::ContentTypeParameters() |
466 // ----------------------------------------------------------------------------- |
479 // ----------------------------------------------------------------------------- |
467 CDesCArray& CFSMailMessage::ContentTypeParameters() |
480 CDesCArray& CFSMailMessage::ContentTypeParameters() |
468 { |
481 { |
469 FUNC_LOG; |
482 NM_FUNCTION; |
|
483 |
470 CDesCArray* faked = NULL; |
484 CDesCArray* faked = NULL; |
471 return *faked; |
485 return *faked; |
472 } |
486 } |
473 |
487 |
474 // ----------------------------------------------------------------------------- |
488 // ----------------------------------------------------------------------------- |
475 // CFSMailMessage::DoAttachmentListL |
489 // CFSMailMessage::DoAttachmentListL |
476 // ----------------------------------------------------------------------------- |
490 // ----------------------------------------------------------------------------- |
477 void CFSMailMessage::DoAttachmentListL( RPointerArray<CFSMailMessagePart>& aParts ) |
491 void CFSMailMessage::DoAttachmentListL( RPointerArray<CFSMailMessagePart>& aParts ) |
478 { |
492 { |
479 FUNC_LOG; |
493 NM_FUNCTION; |
|
494 |
480 AttachmentListL(aParts); |
495 AttachmentListL(aParts); |
481 } |
496 } |
482 |
497 |
483 //<qmail> |
498 //<qmail> |
484 // ----------------------------------------------------------------------------- |
499 // ----------------------------------------------------------------------------- |
485 // CFSMailMessage::GetNmMessage |
500 // CFSMailMessage::GetNmMessage |
486 // It does not fill the list of child parts |
501 // It does not fill the list of child parts |
487 // ----------------------------------------------------------------------------- |
502 // ----------------------------------------------------------------------------- |
488 EXPORT_C NmMessage* CFSMailMessage::GetNmMessage() |
503 EXPORT_C NmMessage* CFSMailMessage::GetNmMessage() |
489 { |
504 { |
|
505 NM_FUNCTION; |
|
506 |
490 NmMessage* message = new NmMessage(iNmPrivateMessageEnvelope, iNmPrivateMessagePart); |
507 NmMessage* message = new NmMessage(iNmPrivateMessageEnvelope, iNmPrivateMessagePart); |
491 return message; |
508 return message; |
492 } |
509 } |
493 //</qmail> |
510 //</qmail> |