--- a/messagingapp/msgui/appengine/inc/conversationmsgstorehandler.h Fri Apr 16 14:56:15 2010 +0300
+++ b/messagingapp/msgui/appengine/inc/conversationmsgstorehandler.h Mon May 03 12:29:07 2010 +0300
@@ -21,13 +21,16 @@
// INCLUDE FILES
#include <msvapi.h>
#include <ccsdefs.h>
+#include <QString>
// FORWARD DECLARATIONS
class CMsvSession;
class MMsvSessionObserver;
class DraftsModel;
+class CClientMtmRegistry;
+class CMmsClientMtm;
+class CMmsNotificationClientMtm;
-// CONSTANTS
class ConversationMsgStoreHandler: public MMsvSessionObserver
{
@@ -84,6 +87,18 @@
* @param aIdArray Array of message ids.
*/
void DeleteMessages(RArray<TInt>& aIdArray);
+
+ /**
+ * Delete all draft messages.
+ */
+ void DeleteAllDraftMessagesL();
+
+ /**
+ * Resend a specified message that has failed.
+ * @param aId TMsvId of the failed message
+ * @return bool true if succeeded
+ */
+ bool ResendMessageL(TMsvId aId);
/**
* Returns the msv session object
@@ -96,6 +111,80 @@
*/
void FetchDraftMessages(DraftsModel* draftsModel);
+ /**
+ * Mark message as read and get the message type.
+ * @param messageId message Id
+ * @param msgType message type is written to this.
+ * @param msgType message sub type is written to this.
+ */
+ void markAsReadAndGetType(int msgId,
+ int& msgType,
+ int& msgSubType);
+
+ /**
+ * Extract the message type.
+ * @param entry message entry.
+ * @param msgType message type is written to this.
+ * @param msgType message sub type is written to this.
+ */
+ void extractMsgType(const TMsvEntry& entry,
+ int& msgType,
+ int& msgSubType);
+ /**
+ * Query if the download operation be performed for
+ * a message notification entry
+ * @param aId, message notification id
+ * @return true if download operation is possible
+ */
+ bool DownloadOperationSupported(const TMsvId& aId);
+
+
+ /**
+ * Sets content to messageId
+ * @param messageId, Message Id content
+ */
+ void setNotificationMessageId(int messageId);
+
+ /**
+ * Seeker method for getting mms notification estimated msg size
+ * @return Formatted string of msg size
+ */
+ QString NotificationMsgSize();
+
+ /**
+ * Seeker method for getting mms notification class type
+ * @return Notification Class type string
+ */
+ QString NotificationClass();
+
+ /**
+ * Seeker method for message status and error string
+ * mms notification's download state
+ * @param [OUT] status, msg status
+ * @param [OUT] statusStr, localized string of msg status
+ */
+ void NotificationStatus(int& status,
+ QString& statusStr);
+
+ /**
+ * Seeker method getting expiry info of a notification msg
+ * @param [OUT] expiryTime, notification's expiry time
+ * @param [OUT] expiryTimeQString, formatted string of
+ * notification's expiry time
+ */
+ void NotificationExpiryDate(
+ TTime& expiryTime,
+ QString& expiryTimeStr);
+
+ /**
+ * Download a specified message
+ * @param aId TMsvId of the message
+ * @return KErrNone if Download request is successful,
+ * KErrNotFound if settings are not available,
+ * KErrGeneral for other cases
+ */
+ TInt DownloadMessageL(TMsvId aId);
+
private:
/**
@@ -169,7 +258,22 @@
* State
*/
TDraftHandlerState iState;
-
+ /**
+ * Own. Mtm Registry
+ */
+ CClientMtmRegistry* iMtmReg;
+
+ /**
+ * MMS client mtm
+ */
+ CMmsClientMtm* iMmsClient;
+
+ /**
+ * Notification client mtm
+ */
+ CMmsNotificationClientMtm* iNotificationClient;
+
+ TBool iOfflineSupported;
};
#endif // CONVERSATION_MSG_STORE_HANDLER_H