emailservices/emailstore/base_plugin/inc/BasePlugin.h
changeset 20 ecc8def7944a
parent 18 578830873419
child 23 2dc6caa42ec3
equal deleted inserted replaced
18:578830873419 20:ecc8def7944a
    32 #include "MsgStoreMessage.h"
    32 #include "MsgStoreMessage.h"
    33 #include "MsgStoreObserver.h"
    33 #include "MsgStoreObserver.h"
    34 #include "DebugLogMacros.h"
    34 #include "DebugLogMacros.h"
    35 //</cmail>
    35 //</cmail>
    36 
    36 
       
    37 //<qmail> Entire CBasePlugin class is exported in 10.1
    37 #include "baseplugindef.h"
    38 #include "baseplugindef.h"
       
    39 //</qmail>
    38 
    40 
    39 #include "basemrinfoobject.h"
    41 #include "basemrinfoobject.h"
    40 #include "Map.h"
    42 #include "Map.h"
    41 
    43 
    42 
    44 
   199             const TFSMailMsgId& aFolderId,
   201             const TFSMailMsgId& aFolderId,
   200             const RArray<TFSMailMsgId>& aMessages );
   202             const RArray<TFSMailMsgId>& aMessages );
   201 
   203 
   202          virtual CFSMailMessage* CreateMessageToSendL(
   204          virtual CFSMailMessage* CreateMessageToSendL(
   203             const TFSMailMsgId& aMailBox );
   205             const TFSMailMsgId& aMailBox );
   204          // <qmail>
   206 // <qmail>
   205         virtual void CreateMessageToSendL(
   207         virtual void CreateMessageToSendL(
   206             const TFSMailMsgId& aMailBoxId,
   208             const TFSMailMsgId& aMailBoxId,
   207             MFSMailRequestObserver& aOperationObserver,
   209             MFSMailRequestObserver& aOperationObserver,
   208             const TInt aRequestId );
   210             const TInt aRequestId );
   209          // </qmail>
   211 // </qmail>
   210 
   212 
   211          virtual CFSMailMessage* CreateForwardMessageL(
   213          virtual CFSMailMessage* CreateForwardMessageL(
   212             const TFSMailMsgId& aMailBox,
   214             const TFSMailMsgId& aMailBox,
   213             const TFSMailMsgId& aOriginal,
   215             const TFSMailMsgId& aOriginal,
   214             const TDesC& aHeaderDescriptor );
   216             const TDesC& aHeaderDescriptor );
   221 
   223 
   222          virtual void StoreMessageL(
   224          virtual void StoreMessageL(
   223             const TFSMailMsgId& aMailBoxId,
   225             const TFSMailMsgId& aMailBoxId,
   224             CFSMailMessage& aMessage );
   226             CFSMailMessage& aMessage );
   225         
   227         
   226         // <qmail>
   228 // <qmail>
   227          void StoreMessagesL(
   229          void StoreMessagesL(
   228                 const TFSMailMsgId& aMailBoxId,
   230                 const TFSMailMsgId& aMailBoxId,
   229                 RPointerArray<CFSMailMessage> &messages,
   231                 RPointerArray<CFSMailMessage> &messages,
   230                 MFSMailRequestObserver& aOperationObserver,
   232                 MFSMailRequestObserver& aOperationObserver,
   231                 const TInt aRequestId );
   233                 const TInt aRequestId );
   232         // </qmail>
   234 // </qmail>
   233         
   235         
   234         // <qmail>
   236 // <qmail>
   235         virtual void StoreMessagePartsL(
   237         virtual void StoreMessagePartsL(
   236                RPointerArray<CFSMailMessagePart>& aMessageParts,
   238                RPointerArray<CFSMailMessagePart>& aMessageParts,
   237                MFSMailRequestObserver& aOperationObserver,
   239                MFSMailRequestObserver& aOperationObserver,
   238                const TInt aRequestId);
   240                const TInt aRequestId);
   239         // <//qmail>
   241 // <//qmail>
   240 		
   242 		
   241          virtual void FetchMessagesL(
   243          virtual void FetchMessagesL(
   242             const TFSMailMsgId& aMailBoxId,
   244             const TFSMailMsgId& aMailBoxId,
   243             const TFSMailMsgId& aFolderId,
   245             const TFSMailMsgId& aFolderId,
   244             const RArray<TFSMailMsgId>& aMessageIds,
   246             const RArray<TFSMailMsgId>& aMessageIds,
   654         void TranslateEmailFwRecipientsL(
   656         void TranslateEmailFwRecipientsL(
   655             CMsgStoreMessagePart& aDst,
   657             CMsgStoreMessagePart& aDst,
   656             const TDesC8& aDstProperty,
   658             const TDesC8& aDstProperty,
   657             RPointerArray<CFSMailAddress>& aRecipients );
   659             RPointerArray<CFSMailAddress>& aRecipients );
   658 
   660 
   659          static void RemoveAllPropertiesL(
   661         static void RemoveAllPropertiesL(
   660             CMsgStorePropertyContainer& aContainer,
   662             CMsgStorePropertyContainer& aContainer,
   661             const TDesC8& aName );
   663             const TDesC8& aName );
   662 
   664 
   663          CMailboxInfo& RefreshMailboxCacheL( TMsgStoreId aMailBoxId );
   665          CMailboxInfo& RefreshMailboxCacheL( TMsgStoreId aMailBoxId );
   664 
   666 
   774 
   776 
   775 	     void InvalidateCacheIfNecessary(
   777 	     void InvalidateCacheIfNecessary(
   776 	        TMsgStoreId aId,
   778 	        TMsgStoreId aId,
   777 	        TMsgStoreId aParentId,
   779 	        TMsgStoreId aParentId,
   778 	        TMsgStoreId aOtherId );
   780 	        TMsgStoreId aOtherId );
       
   781 	    
       
   782 	     virtual const TDesC& CBasePlugin::CalendarFileName() const;
   779 
   783 
   780     public:
   784     public:
   781 
   785 
   782 	    /**
   786 	    /**
   783 	     * Direct message sending that does not require having a FW message
   787 	     * Direct message sending that does not require having a FW message
   806         RPointerArray<CFetchRequester> iReqs;
   810         RPointerArray<CFetchRequester> iReqs;
   807 
   811 
   808         TCacheLine iCacheLine;
   812         TCacheLine iCacheLine;
   809 
   813 
   810     private:
   814     private:
   811 
   815     protected:
   812         MDelayedOpsManager* iDelayedOpsManager;
   816         MDelayedOpsManager* iDelayedOpsManager;
   813 
   817 
   814         /**
   818         /**
   815          * Descriptor for an ongoing part(attachment) fetch operation.
   819          * Descriptor for an ongoing part(attachment) fetch operation.
   816          */
   820          */
   846             {
   850             {
   847             }
   851             }
   848 
   852 
   849         virtual ~CMailboxInfo()
   853         virtual ~CMailboxInfo()
   850             {
   854             {
   851             iMailBox->RemoveObserverL( iBasePlugin );
   855             if ( iMailBox )
       
   856                 iMailBox->RemoveObserverL( iBasePlugin );
       
   857 
   852             iObservers.Close();
   858             iObservers.Close();
   853 
   859 
   854             delete iMailBoxName;
   860             delete iMailBoxName;
   855             delete iMailBoxDisplayName;
   861             delete iMailBoxDisplayName;
   856             delete iBrandingId;
   862             delete iBrandingId;
   857             delete iMailBox;
   863             delete iMailBox;
   858             }
   864             };
   859 
   865 
   860         CMsgStoreMailBox& operator() ()
   866         CMsgStoreMailBox& operator() ()
   861             {
   867             {
   862             return *iMailBox;
   868             return *iMailBox;
   863             }
   869             }