|
1 /* |
|
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: |
|
15 * |
|
16 */ |
|
17 |
|
18 #include "nmapitypesconverter.h" |
|
19 |
|
20 /* |
|
21 * converts nmmailbox to client api nmmailbox |
|
22 */ |
|
23 EmailClientApi::NmMailbox NmToApiConverter::NmMailbox2ApiNmMailbox(const NmMailbox &mailbox) |
|
24 { |
|
25 EmailClientApi::NmMailbox api_mailbox; |
|
26 api_mailbox.setId(mailbox.id().id()); |
|
27 api_mailbox.setName(mailbox.name()); |
|
28 NmMailbox tmp(mailbox); |
|
29 api_mailbox.setAddress(tmp.address().address()); |
|
30 return api_mailbox; |
|
31 } |
|
32 |
|
33 /* |
|
34 * converts NmFolder to client api NmFolder |
|
35 */ |
|
36 EmailClientApi::NmFolder NmToApiConverter::NmFolder2ApiNmFolder(const NmFolder &folder) |
|
37 { |
|
38 EmailClientApi::NmFolder api_folder; |
|
39 |
|
40 api_folder.setParentFolderId(folder.parentId().id()); |
|
41 api_folder.setId(folder.folderId().id()); |
|
42 api_folder.setName(folder.name()); |
|
43 api_folder.setFolderType((EmailClientApi::EmailFolderType) folder.folderType()); |
|
44 return api_folder; |
|
45 } |
|
46 |
|
47 /* |
|
48 * converts NmMessageEnvelope to client api NmMessageEnvelope |
|
49 */ |
|
50 EmailClientApi::NmMessageEnvelope NmToApiConverter::NmMessageEnvelope2ApiEnvelope( |
|
51 const NmMessageEnvelope &envelope) |
|
52 { |
|
53 EmailClientApi::NmMessageEnvelope api_env; |
|
54 |
|
55 NmMessageEnvelope tmp(envelope); |
|
56 |
|
57 QList<NmAddress> to = tmp.toRecipients(); |
|
58 QList<NmAddress> cc = tmp.ccRecipients(); |
|
59 QList<EmailClientApi::NmEmailAddress> to_api = NmAddress2QString(to); |
|
60 QList<EmailClientApi::NmEmailAddress> cc_api = NmAddress2QString(cc); |
|
61 |
|
62 api_env.setGetToRecipients(to_api); |
|
63 api_env.setGetCcRecipients(cc_api); |
|
64 |
|
65 api_env.setHasAttachments(envelope.hasAttachments()); |
|
66 api_env.setId(envelope.id().id()); |
|
67 api_env.setIsForwarded(envelope.isForwarded()); |
|
68 api_env.setIsRead(envelope.isRead()); |
|
69 api_env.setIsReplied(envelope.isReplied()); |
|
70 api_env.setParentFolder(tmp.parentId().id()); |
|
71 |
|
72 api_env.setSender(envelope.sender().address()); |
|
73 api_env.setSentTime(envelope.sentTime()); |
|
74 api_env.setSubject(envelope.subject()); |
|
75 |
|
76 return api_env; |
|
77 } |
|
78 |
|
79 /* |
|
80 * converts QList of NmAddresses to Qlist of email client apis NmEmailAddresses |
|
81 */ |
|
82 QList<EmailClientApi::NmEmailAddress> NmToApiConverter::NmAddress2QString( |
|
83 const QList<NmAddress> &addresses) |
|
84 { |
|
85 QList<EmailClientApi::NmEmailAddress> nmAddresses; |
|
86 for (int i = 0; i < addresses.count(); i++) { |
|
87 EmailClientApi::NmEmailAddress addr; |
|
88 addr.setAddress(addresses[i].address()); |
|
89 addr.setDisplayName(addresses[i].displayName()); |
|
90 |
|
91 nmAddresses << addr; |
|
92 } |
|
93 |
|
94 return nmAddresses; |
|
95 } |
|
96 |