emailuis/nmframeworkadapter/inc/nmframeworkadapter.h
branchGCC_SURGE
changeset 55 cdd802add233
parent 54 997a02608b3a
child 62 a8c646b56683
equal deleted inserted replaced
28:011f79704660 55:cdd802add233
    18 #ifndef NMFRAMEWORKADAPTER_H
    18 #ifndef NMFRAMEWORKADAPTER_H
    19 #define NMFRAMEWORKADAPTER_H
    19 #define NMFRAMEWORKADAPTER_H
    20 
    20 
    21 #include <nmcommon.h>
    21 #include <nmcommon.h>
    22 #include <nmdataplugininterface.h>
    22 #include <nmdataplugininterface.h>
       
    23 #include <nmapplicationstateinterface.h>
    23 #include <CFSMailCommon.h>
    24 #include <CFSMailCommon.h>
    24 #include <MFSMailEventObserver.h>
    25 #include <MFSMailEventObserver.h>
    25 
    26 
    26 #include <xqsharablefile.h>
    27 #include <xqsharablefile.h>
    27 
    28 
    31 class NmMessageEnvelope;
    32 class NmMessageEnvelope;
    32 class NmMessagePart;
    33 class NmMessagePart;
    33 class NmOperation;
    34 class NmOperation;
    34 class NmMessageCreationOperation;
    35 class NmMessageCreationOperation;
    35 class CFSMailClient;
    36 class CFSMailClient;
       
    37 class CFSMailBox;
       
    38 class CFSMailFolder;
    36 class CFSMailMessage;
    39 class CFSMailMessage;
    37 class CFSMailMessagePart;
    40 class CFSMailMessagePart;
    38 class NmStoreEnvelopesOperation;
    41 class NmStoreEnvelopesOperation;
    39 class NmAddAttachmentsOperation;
    42 class NmAddAttachmentsOperation;
    40 class NmCheckOutboxOperation;
       
    41 class NmMailboxSearchObserver;
    43 class NmMailboxSearchObserver;
    42 class NmMessageSendingOperation;
    44 class NmMessageSendingOperation;
       
    45 class CEmailExtension;
    43 
    46 
    44 
    47 
    45 class NmFrameworkAdapter :
    48 class NmFrameworkAdapter :
    46     public QObject,
    49     public QObject,
    47     public NmDataPluginInterface,
    50     public NmDataPluginInterface,
       
    51     public NmApplicationStateInterface,
    48     public MFSMailEventObserver
    52     public MFSMailEventObserver
    49 {
    53 {
    50     Q_OBJECT
    54     Q_OBJECT
    51     Q_INTERFACES(NmDataPluginInterface)
    55     Q_INTERFACES(NmDataPluginInterface NmApplicationStateInterface)
    52 
    56 
    53 public:
    57 public:
    54 
    58 
    55     NmFrameworkAdapter();
    59     NmFrameworkAdapter();
    56 
    60 
    60 
    64 
    61     int listMailboxes(QList<NmMailbox*>& mailboxList);
    65     int listMailboxes(QList<NmMailbox*>& mailboxList);
    62 
    66 
    63     int getMailboxById(const NmId& id, NmMailbox*& mailbox);
    67     int getMailboxById(const NmId& id, NmMailbox*& mailbox);
    64 
    68 
    65     int deleteMailboxById(const NmId& id);
    69     QPointer<NmOperation> deleteMailboxById(const NmId& id);
    66 
    70 
    67     int getMessageById(
    71     int getMessageById(
    68             const NmId& mailboxId,
    72             const NmId& mailboxId,
    69             const NmId& folderId,
    73             const NmId& folderId,
    70             const NmId& messageId,
    74             const NmId& messageId,
    76    
    80    
    77     int listMessages(
    81     int listMessages(
    78             const NmId& mailboxId,
    82             const NmId& mailboxId,
    79             const NmId& folderId,
    83             const NmId& folderId,
    80             QList<NmMessageEnvelope*> &messageMetaDataList);
    84             QList<NmMessageEnvelope*> &messageMetaDataList);
    81     
    85 
       
    86     int listMessages(
       
    87             const NmId& mailboxId,
       
    88             const NmId& folderId,
       
    89             QList<NmMessageEnvelope*> &messageMetaDataList,
       
    90             const int maxAmountOfEnvelopes);
       
    91 
    82     int listMessages(
    92     int listMessages(
    83             const NmId& mailboxId,
    93             const NmId& mailboxId,
    84             const NmId& folderId,
    94             const NmId& folderId,
    85             QList<NmMessage*> &messageList,
    95             QList<NmMessage*> &messageList,
    86             const int maxAmountOfMessages = NmMaxItemsInMessageList);
    96             const int maxAmountOfMessages = NmMaxItemsInMessageList);
    93     QPointer<NmOperation> fetchMessagePart( 
   103     QPointer<NmOperation> fetchMessagePart( 
    94             const NmId &mailboxId,
   104             const NmId &mailboxId,
    95             const NmId &folderId,
   105             const NmId &folderId,
    96             const NmId &messageId,
   106             const NmId &messageId,
    97             const NmId &messagePartId);
   107             const NmId &messagePartId);
       
   108 			
       
   109     QPointer<NmOperation> fetchMessageParts( 
       
   110         const NmId &mailboxId,
       
   111         const NmId &folderId,
       
   112         const NmId &messageId,
       
   113         const QList<NmId> &messagePartIds);
    98     
   114     
    99     XQSharableFile messagePartFile(
   115     XQSharableFile messagePartFile(
   100             const NmId &mailboxId,
   116             const NmId &mailboxId,
   101             const NmId &folderId,
   117             const NmId &folderId,
   102             const NmId &messageId,
   118             const NmId &messageId,
   165 
   181 
   166     QPointer<NmOperation> removeAttachment(
   182     QPointer<NmOperation> removeAttachment(
   167             const NmMessage &message, 
   183             const NmMessage &message, 
   168             const NmId &attachmentPartId);
   184             const NmId &attachmentPartId);
   169 
   185 
   170     QPointer<NmCheckOutboxOperation> checkOutbox(const NmId& mailboxId);
       
   171     
       
   172     NmSyncState syncState(const NmId& mailboxId) const;
   186     NmSyncState syncState(const NmId& mailboxId) const;
   173     
   187     
   174     NmConnectState connectionState(const NmId& mailboxId) const;
   188     NmConnectState connectionState(const NmId& mailboxId) const;
   175     
   189     
   176     int getFolderById(
   190     int getFolderById(
   177             const NmId &mailboxId, 
   191             const NmId &mailboxId, 
   178             const NmId &folderId, 
   192             const NmId &folderId, 
   179             NmFolder *&folder );
   193             NmFolder *&folder );
   180 			
       
   181 	int listMessages(
       
   182             const NmId& mailboxId,
       
   183             const NmId& folderId,
       
   184             QList<NmMessageEnvelope*> &messageMetaDataList,
       
   185             const int maxAmountOfEnvelopes);
       
   186 
   194 
   187     int search(const NmId &mailboxId,
   195     int search(const NmId &mailboxId,
   188                const QStringList &searchStrings);
   196                const QStringList &searchStrings);
   189 
   197 
   190     int cancelSearch(const NmId &mailboxId);
   198     int cancelSearch(const NmId &mailboxId);
   191 
   199 
   192 
   200     void updateActiveFolder(const NmId &mailboxId, const NmId &folderId);
       
   201     
       
   202     QPointer<NmOperation> removeDraftMessage(NmMessage *message);
       
   203 	
       
   204 	int copyMessages(
       
   205         const NmId &mailboxId,
       
   206         const QList<quint64> &messageIds,
       
   207         const NmId &sourceFolderId,
       
   208         const NmId &destinationFolderId);
       
   209     
   193 signals:
   210 signals:
   194 
   211 
   195     void mailboxEvent(NmMailboxEvent event, const QList<NmId> &mailboxIds);
   212     void mailboxEvent(NmMailboxEvent event, const QList<NmId> &mailboxIds);
   196 
   213 
   197     void messageEvent(
   214     void messageEvent(
   204             NmSyncState state,
   221             NmSyncState state,
   205             const NmOperationCompletionEvent &event );
   222             const NmOperationCompletionEvent &event );
   206     
   223     
   207     void connectionEvent(NmConnectState state, const NmId mailboxId, int errorCode);
   224     void connectionEvent(NmConnectState state, const NmId mailboxId, int errorCode);
   208 
   225 
   209     void matchFound(const NmId &messageId);
   226     void matchFound(const NmId &messageId, const NmId &folderId);
   210 
   227 
   211     void searchComplete();
   228     void searchComplete();
   212 
   229 
   213 
   230 
   214 private:
   231 private:
   222     void contentToMessagePartL(
   239     void contentToMessagePartL(
   223             const NmId &mailboxId,
   240             const NmId &mailboxId,
   224             const NmId &folderId,
   241             const NmId &folderId,
   225             const NmId &messageId,
   242             const NmId &messageId,
   226             NmMessagePart &messagePart);
   243             NmMessagePart &messagePart);
   227         
   244 
       
   245     void getMessagesFromFolderL(CFSMailFolder *folder,
       
   246                                 QList<NmMessageEnvelope*> &messageEnvelopeList,
       
   247                                 const int maxEnvelopeCount);
       
   248 
   228     void listMessagesL(  
   249     void listMessagesL(  
   229             const NmId &mailboxId,
   250             const NmId &mailboxId,
   230             const NmId &folderId,
   251             const NmId &folderId,
   231             QList<NmMessageEnvelope*> &messageMetaDataList, 
   252             QList<NmMessageEnvelope*> &messageMetaDataList, 
   232             const int maxAmountOfEnvelopes);
   253             const int maxAmountOfEnvelopes);
   271     
   292     
   272     void handleMailCopied(TAny* param1,TAny* param2, TFSMailMsgId mailbox);
   293     void handleMailCopied(TAny* param1,TAny* param2, TFSMailMsgId mailbox);
   273     
   294     
   274     void handleSyncstateEvent(TAny* param1, TFSMailMsgId mailbox);
   295     void handleSyncstateEvent(TAny* param1, TFSMailMsgId mailbox);
   275     
   296     
   276 	void getFolderByIdL(
   297     void getFolderByIdL(
   277             const NmId& mailboxId, 
   298             const NmId& mailboxId, 
   278             const NmId& folderId, 
   299             const NmId& folderId, 
   279             NmFolder*& unreadCount );
   300             NmFolder*& unreadCount );
       
   301     
       
   302     void doUpdateActiveFolderL(const NmId &mailboxId, const NmId &folderId);
       
   303     
       
   304     CEmailExtension* getEMailStateExtensionL();  
       
   305 	
       
   306     void copyMessagesL(
       
   307         const NmId &mailboxId, 
       
   308         const QList<quint64> &messageIds,
       
   309         const NmId &sourceFolderId,
       
   310         const NmId &destinationFolderId);
       
   311 	
       
   312 	void deleteMailboxByIdL(const NmId &mailboxId);    
   280 
   313 
   281 
   314 
   282 private: // Data
   315 private: // Data
   283 
   316 
   284     CFSMailClient* mFSfw; // Singleton, not owned
   317     CFSMailClient* mFSfw; // Singleton, not owned
   285     NmMailboxSearchObserver *mSearchObserver; // Owned
   318     NmMailboxSearchObserver *mSearchObserver; // Owned
       
   319     CFSMailBox* mCurrentMailBox; // Owned
       
   320     CEmailExtension* mStateExtension; // not owned
       
   321 
       
   322 
   286 };
   323 };
   287 
   324 
   288 
   325 
   289 #endif // NMFRAMEWORKADAPTER_H
   326 #endif // NMFRAMEWORKADAPTER_H