emailservices/nmclientapi/inc/nmapiengine.h
changeset 76 38bf5461e270
parent 74 6c59112cfd31
equal deleted inserted replaced
74:6c59112cfd31 76:38bf5461e270
    22 #include <CFSMailFolder.h>
    22 #include <CFSMailFolder.h>
    23 
    23 
    24 #include "nmcommon.h"
    24 #include "nmcommon.h"
    25 #include "nmapiprivateclasses.h"
    25 #include "nmapiprivateclasses.h"
    26 
    26 
    27 class NmApiDataPluginFactory;
       
    28 
    27 
    29 namespace EmailClientApi
    28 namespace EmailClientApi
    30 {
    29 {
    31 
    30 class NmApiDataPluginFactory;
    32 class NmApiFolder;
    31 class NmApiFolder;
    33 class NmApiMailbox;
    32 class NmApiMailbox;
    34 class NmApiMessageEnvelope;
    33 class NmApiMessageEnvelope;
    35 class NmApiMessage;
    34 class NmApiMessage;
    36 }
       
    37 
    35 
    38 class NmApiEngine : public QObject
    36 class NmApiEngine : public QObject
    39 {
    37 {
    40     Q_OBJECT
    38     Q_OBJECT
    41 public:
    39 public:
    42     static NmApiEngine* instance();
    40     static NmApiEngine* instance();
    43     static void releaseInstance(NmApiEngine *&engine);
    41     static void releaseInstance(NmApiEngine *&engine);
    44 
    42 
    45     void listMailboxes(QList<EmailClientApi::NmApiMailbox> &mailboxList);
    43     void listMailboxes(QList<NmApiMailbox> &mailboxList);
    46 
    44 
    47     void listFolders(const quint64 mailboxId, QList<EmailClientApi::NmApiFolder> &folderList);
    45     void listFolders(const quint64 mailboxId, QList<NmApiFolder> &folderList);
    48     void listEnvelopes(const quint64 mailboxId, const quint64 folderId, 
    46     void listEnvelopes(const quint64 mailboxId, const quint64 folderId, 
    49 	                   QList<EmailClientApi::NmApiMessageEnvelope> &messageEnvelopeList);
    47 	                   QList<NmApiMessageEnvelope> &messageEnvelopeList);
    50 
    48 
    51     bool getEnvelopeById(
    49     bool getEnvelopeById(
    52         const quint64 mailboxId,
    50         const quint64 mailboxId,
    53         const quint64 folderId,
    51         const quint64 folderId,
    54         const quint64 envelopeId,
    52         const quint64 envelopeId,
    55         EmailClientApi::NmApiMessageEnvelope &envelope);
    53         NmApiMessageEnvelope &envelope);
    56 
    54 
    57     bool getFolderById(
    55     bool getFolderById(
    58         const quint64 mailboxId,
    56         const quint64 mailboxId,
    59         const quint64 folderId,
    57         const quint64 folderId,
    60         EmailClientApi::NmApiFolder &mailboxFolder);
    58         NmApiFolder &mailboxFolder);
    61 		
    59 		
    62     bool getMailboxById(const quint64 mailboxId, EmailClientApi::NmApiMailbox &mailbox);
    60     bool getMailboxById(const quint64 mailboxId, NmApiMailbox &mailbox);
    63 
    61 
    64     bool getMessageById(
    62     bool getMessageById(
    65         const quint64 mailboxId,
    63         const quint64 mailboxId,
    66         const quint64 folderId,
    64         const quint64 folderId,
    67         const quint64 messageId,
    65         const quint64 messageId,
    68         EmailClientApi::NmApiMessage &message);
    66         NmApiMessage &message);
    69     
    67     
    70     void startCollectingEvents();
    68     void startCollectingEvents();
    71 
    69 
    72     bool listMailPlugins(RPointerArray<CFSMailPlugin> &mailPlugins);
    70     bool listMailPlugins(RPointerArray<CFSMailPlugin> &mailPlugins);
    73 
    71 
    75     /*!
    73     /*!
    76        It contains info about event in emailstore.
    74        It contains info about event in emailstore.
    77        
    75        
    78        \arg Contains info about event and related object (message or mailbox list)
    76        \arg Contains info about event and related object (message or mailbox list)
    79      */
    77      */
    80     void emailStoreEvent(NmApiEvent event);
    78     void emailStoreEvent(EmailClientApi::NmApiEvent event);
    81 
    79 
    82 private slots:
    80 private slots:
    83     void mailboxChangedArrived(NmMailboxEvent, const QList<NmId> &mailboxIds);
    81     void mailboxChangedArrived(NmMailboxEvent, const QList<NmId> &mailboxIds);
    84     void messageChangedArrived(
    82     void messageChangedArrived(
    85         NmMessageEvent messageEvent,
    83         NmMessageEvent messageEvent,
    98     static quint32 mReferenceCount;//!<Count of refences to engine instance
    96     static quint32 mReferenceCount;//!<Count of refences to engine instance
    99 
    97 
   100     NmApiDataPluginFactory *mFactory;//!<Plugin factory. Is needed to get plugins for emails
    98     NmApiDataPluginFactory *mFactory;//!<Plugin factory. Is needed to get plugins for emails
   101     RPointerArray<CFSMailPlugin> mMailPlugins;
    99     RPointerArray<CFSMailPlugin> mMailPlugins;
   102 };
   100 };
       
   101 }
       
   102 
   103 
   103 
   104 #endif /* NMAPIENGINE_H */
   104 #endif /* NMAPIENGINE_H */