messagingfw/msgsrvnstore/server/inc/MTSR.H
branchRCL_3
changeset 46 d51193d814ea
parent 43 d2c4c66342f3
child 59 d1d846af7341
--- a/messagingfw/msgsrvnstore/server/inc/MTSR.H	Tue Aug 31 15:41:11 2010 +0300
+++ b/messagingfw/msgsrvnstore/server/inc/MTSR.H	Wed Sep 01 12:27:27 2010 +0100
@@ -383,7 +383,40 @@
 #endif
 
 	TInt GetNonOperationMtmData(TNonOperationMtmDataType& aMtmDataType, TPtrC8& aResultBuffer);
+
+
+	/** Updates a remote selection of id  with relevant data when called by the Message Server.
+	 
+	Implementations should provide this function if the messaging protocol supports 
+	updating of remote entries. If this is not supported, implementations should 
+	leave with KErrNotSupported. 
 	
+	The Server-side MTM implementation must decide what information in the TMsvEntry 
+	is relevant to the remote entry, and translate it appropriately for the specific 
+	protocol. Most of the data contained in the TMsvEntry is specific to the Symbian 
+	OS Message Server, and would probably have no direct correlation with the 
+	protocol's own storage format. Some entry data may however be useful. For 
+	example, if the protocol supports remote renaming of folders, the implementation 
+	could:
+	
+	1. check for a folder type entry
+	
+	2. extract the folder name from aNewEntry.iDetails
+	
+	3. check if the folder name has changed by comparing the new name with iDetails 
+	in the index entry currently; if not, complete with KErrNone
+	
+	4. initiate a protocol-specific action to rename the remote folder
+	
+	The implementation should also always update the local Message Server index 
+	through CMsvServerEntry::ChangeL().
+	
+	@param aSelection  Selection of TMsvId which to update 
+	@param aMark Read and Unread mark value. 
+	@param aStatus Asynchronous completion word for the operation. 
+	
+	@leave KErrNotSupported The Server-side MTM does not support this operation 
+	@leave Other leave codes Dependent on implementation */
 	IMPORT_C virtual TInt ChangeEntriesL( const CMsvEntrySelection& aSelection,TInt aMark, TRequestStatus& aStatus );
 protected:
 	IMPORT_C CBaseServerMtm(CRegisteredMtmDll& aRegisteredMtmDll, CMsvServerEntry* aServerEntry);