messagingfw/msgsrvnstore/server/inc/MTSR.H
branchRCL_3
changeset 22 d2c4c66342f3
parent 21 e5b3a2155e1a
child 23 d51193d814ea
equal deleted inserted replaced
21:e5b3a2155e1a 22:d2c4c66342f3
   381 #if (defined SYMBIAN_USER_PROMPT_SERVICE)	
   381 #if (defined SYMBIAN_USER_PROMPT_SERVICE)	
   382 	TInt ClientThreadInfo(TThreadId aClientInfo, TBool aCapabilityCheck);
   382 	TInt ClientThreadInfo(TThreadId aClientInfo, TBool aCapabilityCheck);
   383 #endif
   383 #endif
   384 
   384 
   385 	TInt GetNonOperationMtmData(TNonOperationMtmDataType& aMtmDataType, TPtrC8& aResultBuffer);
   385 	TInt GetNonOperationMtmData(TNonOperationMtmDataType& aMtmDataType, TPtrC8& aResultBuffer);
   386 
   386 	
   387 
       
   388 	/** Updates a remote selection of id  with relevant data when called by the Message Server.
       
   389 	 
       
   390 	Implementations should provide this function if the messaging protocol supports 
       
   391 	updating of remote entries. If this is not supported, implementations should 
       
   392 	leave with KErrNotSupported. 
       
   393 	
       
   394 	The Server-side MTM implementation must decide what information in the TMsvEntry 
       
   395 	is relevant to the remote entry, and translate it appropriately for the specific 
       
   396 	protocol. Most of the data contained in the TMsvEntry is specific to the Symbian 
       
   397 	OS Message Server, and would probably have no direct correlation with the 
       
   398 	protocol's own storage format. Some entry data may however be useful. For 
       
   399 	example, if the protocol supports remote renaming of folders, the implementation 
       
   400 	could:
       
   401 	
       
   402 	1. check for a folder type entry
       
   403 	
       
   404 	2. extract the folder name from aNewEntry.iDetails
       
   405 	
       
   406 	3. check if the folder name has changed by comparing the new name with iDetails 
       
   407 	in the index entry currently; if not, complete with KErrNone
       
   408 	
       
   409 	4. initiate a protocol-specific action to rename the remote folder
       
   410 	
       
   411 	The implementation should also always update the local Message Server index 
       
   412 	through CMsvServerEntry::ChangeL().
       
   413 	
       
   414 	@param aSelection  Selection of TMsvId which to update 
       
   415 	@param aMark Read and Unread mark value. 
       
   416 	@param aStatus Asynchronous completion word for the operation. 
       
   417 	
       
   418 	@leave KErrNotSupported The Server-side MTM does not support this operation 
       
   419 	@leave Other leave codes Dependent on implementation */
       
   420 	IMPORT_C virtual TInt ChangeEntriesL( const CMsvEntrySelection& aSelection,TInt aMark, TRequestStatus& aStatus );
   387 	IMPORT_C virtual TInt ChangeEntriesL( const CMsvEntrySelection& aSelection,TInt aMark, TRequestStatus& aStatus );
   421 protected:
   388 protected:
   422 	IMPORT_C CBaseServerMtm(CRegisteredMtmDll& aRegisteredMtmDll, CMsvServerEntry* aServerEntry);
   389 	IMPORT_C CBaseServerMtm(CRegisteredMtmDll& aRegisteredMtmDll, CMsvServerEntry* aServerEntry);
   423 	/** Handles the completion of any asynchronous requests that it makes. It is called 
   390 	/** Handles the completion of any asynchronous requests that it makes. It is called 
   424 	from the base class RunL() .
   391 	from the base class RunL() .