emailservices/emailframework/inc/CFSMailPlugin.h
changeset 75 47d84de1c893
parent 72 64e38f08e49c
child 74 6c59112cfd31
equal deleted inserted replaced
72:64e38f08e49c 75:47d84de1c893
   156      * @param aMailboxId id of target mailbox
   156      * @param aMailboxId id of target mailbox
   157      *
   157      *
   158      * @return online / offline
   158      * @return online / offline
   159      */
   159      */
   160      virtual TFSMailBoxStatus GetMailBoxStatus( const TFSMailMsgId& aMailBoxId ) = 0;
   160      virtual TFSMailBoxStatus GetMailBoxStatus( const TFSMailMsgId& aMailBoxId ) = 0;
       
   161 
       
   162     /**
       
   163      * checks if mailbox supports given capability
       
   164      *
       
   165      * @param aCapability capability to be checked
       
   166      * @param aMailBoxId id of the target mailbox
       
   167      *
       
   168      * @return true/false
       
   169      */
       
   170      virtual TBool MailboxHasCapabilityL(   TFSMailBoxCapabilities aCapability,
       
   171                                             TFSMailMsgId aMailBoxId ) = 0;
   161 
   172 
   162     /**
   173     /**
   163      * lists existing mailboxes contained by plugin
   174      * lists existing mailboxes contained by plugin
   164      *
   175      *
   165      * @param aMailBoxes plugin writes list of existing mailboxes into this
   176      * @param aMailBoxes plugin writes list of existing mailboxes into this
   794                                                const TFSMailMsgId& aParentFolderId,
   805                                                const TFSMailMsgId& aParentFolderId,
   795                                                const TFSMailMsgId& aMessageId,
   806                                                const TFSMailMsgId& aMessageId,
   796                                                const TFSMailMsgId& aMessagePartId) = 0;
   807                                                const TFSMailMsgId& aMessagePartId) = 0;
   797 
   808 
   798     /**
   809     /**
   799      * Retrieves a read-only file handle for the content file of this message part.
   810      * Retrieves a file handle for the content file of this message part.
   800      * Should return KErrNotSupported if handle can not be given directly. In that case
   811      * Should return KErrNotSupported if handle can not be given directly. In that case
   801      * FW will next ask to copy file to a temporary location so that FW can open the RFile
   812      * FW will next ask to copy file to a temporary location so that FW can open the RFile
   802      * itself. Ownership of the handle is transferred. Caller is responsible for closing the
   813      * itself. Ownership of the handle is transferred. Caller is responsible for closing the
   803      * handle.
   814      * handle.
   804      *
   815      *
   805      * @param aMailBoxId id of the mailbox where email is located
   816      * @param aMailBoxId id of the mailbox where email is located
   806      * @param aParentFolderId id of the parent folder where email is located
   817      * @param aParentFolderId id of the parent folder where email is located
   807      * @param aMessageId id of the email part belongs to
   818      * @param aMessageId id of the email part belongs to
   808      * @param aMessagePartId id of the message part
   819      * @param aMessagePartId id of the message part
   809      * @param aFileHandle returns the opened read-only file handle
   820      * @param aFileHandle returns the opened file handle
       
   821      * @param aForWriting pass ETrue if the file should be opened for writing instead of read-only
   810      */
   822      */
   811      virtual TInt GetMessagePartFileL( const TFSMailMsgId& aMailBoxId,
   823      virtual TInt GetMessagePartFileL( const TFSMailMsgId& aMailBoxId,
   812                                        const TFSMailMsgId& aParentFolderId,
   824                                        const TFSMailMsgId& aParentFolderId,
   813                                        const TFSMailMsgId& aMessageId,
   825                                        const TFSMailMsgId& aMessageId,
   814                                        const TFSMailMsgId& aMessagePartId,
   826                                        const TFSMailMsgId& aMessagePartId,
   815                                        RFile& aFileHandle) = 0;
   827                                        RFile& aFileHandle,
       
   828                                        TBool aForWriting = EFalse) = 0;
   816 
   829 
   817     /**
   830     /**
   818      * copies contents of this message part to given file
   831      * copies contents of this message part to given file
   819      *
   832      *
   820      * @param aMailBoxId id of the mailbox where email is located
   833      * @param aMailBoxId id of the mailbox where email is located
  1044      * the given mailbox.
  1057      * the given mailbox.
  1045      *
  1058      *
  1046      * @param aMailboxId mailbox id
  1059      * @param aMailboxId mailbox id
  1047      */
  1060      */
  1048     virtual HBufC* GetSignatureL( const TFSMailMsgId& aMailBoxId );
  1061     virtual HBufC* GetSignatureL( const TFSMailMsgId& aMailBoxId );
       
  1062    
       
  1063     /**
       
  1064      * Returns plugin implementation uid
       
  1065      */
       
  1066     inline TUid Id( ) const;
  1049 
  1067 
  1050 protected:
  1068 protected:
  1051 
  1069 
  1052     /**
  1070     /**
  1053      * C++ default constructor.
  1071      * C++ default constructor.