emailservices/emailframework/src/CFSMailClient.cpp
branchRCL_3
changeset 25 3533d4323edc
parent 24 d189ee25cf9d
child 26 968773a0b6ef
--- a/emailservices/emailframework/src/CFSMailClient.cpp	Tue Aug 31 15:04:17 2010 +0300
+++ b/emailservices/emailframework/src/CFSMailClient.cpp	Wed Sep 01 12:28:57 2010 +0100
@@ -15,18 +15,14 @@
 *
 */
 
+
 #include "emailtrace.h"
-
-//<qmail>
-#include <nmcommonheaders.h>
-//</qmail>
-
-#include "CFSMailClient.h"
-#include "CFSFWImplementation.h"
-#include "CFSMailPluginManager.h"
-#include "CFSMailRequestObserver.h"
-#include "CFSMailIterator.h"
-#include "CFSMailBrandManagerImpl.h"
+#include "cfsmailclient.h"
+#include "cfsfwimplementation.h"
+#include "cfsmailpluginmanager.h"
+#include "cfsmailrequestobserver.h"
+#include "cfsmailiterator.h"
+#include "cfsmailbrandmanagerimpl.h"
 
 
 // ================= MEMBER FUNCTIONS ==========================================
@@ -35,7 +31,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailClient* CFSMailClient::NewLC(TInt aConfiguration)
 {
-    NM_FUNCTION;
+    FUNC_LOG;
 
     CFSMailClient* client = Instance();
     if( !client )
@@ -66,11 +62,10 @@
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailClient* CFSMailClient::NewL()
 {
-    NM_FUNCTION;
-    
-    CFSMailClient* client =  CFSMailClient::NewLC(EFSLoadPlugins);
-    CleanupStack:: Pop(client);
-    return client;
+    FUNC_LOG;
+  CFSMailClient* client =  CFSMailClient::NewLC(EFSLoadPlugins);
+  CleanupStack:: Pop(client);
+  return client;
 }
 
 // -----------------------------------------------------------------------------
@@ -78,11 +73,11 @@
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailClient* CFSMailClient::NewL(TInt aConfiguration)
 {
-    NM_FUNCTION;
-    
-    CFSMailClient* client =  CFSMailClient::NewLC(aConfiguration);
-    CleanupStack:: Pop(client);
-    return client;
+    FUNC_LOG;
+
+  CFSMailClient* client =  CFSMailClient::NewLC(aConfiguration);
+  CleanupStack:: Pop(client);
+  return client;
 }
 
 // -----------------------------------------------------------------------------
@@ -90,8 +85,7 @@
 // -----------------------------------------------------------------------------
 void CFSMailClient::ConstructL(TInt aConfiguration)
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	iFWImplementation = CFSFWImplementation::NewL(aConfiguration);
 }
 
@@ -100,8 +94,7 @@
 // -----------------------------------------------------------------------------
 CFSMailClient::CFSMailClient()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	// clear pointers
 	iFWImplementation = NULL;
 	iBrandManager = NULL;
@@ -113,8 +106,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailClient::~CFSMailClient()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	if(iBrandManager)
 		{
 		delete iBrandManager;
@@ -126,27 +118,35 @@
 // CFSMailClient::GetMailBoxByUidL
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailBox* CFSMailClient::GetMailBoxByUidL(const TFSMailMsgId aMailBoxId)
-{
-    NM_FUNCTION;
-    
+    {
+    FUNC_LOG;
 	// select plugin
 	CFSMailBox* mailBox = NULL;
 	CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId);
 	if(plugin)
-	{
+	    {
 		// get mailbox from plugin
 		mailBox = plugin->GetMailBoxByUidL(aMailBoxId);
-	}
-
+	    }
+	else
+	    {
+        iFWImplementation->GetPluginManager().RecheckPlugins();
+        plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId);
+        if(plugin)
+            {
+            // get mailbox from plugin
+            mailBox = plugin->GetMailBoxByUidL(aMailBoxId);
+            }
+	    }
 	return mailBox;
-}
+    }
 
 // -----------------------------------------------------------------------------
 // CFSMailClient::GetMailBoxByUidLC
 // -----------------------------------------------------------------------------
 EXPORT_C CFSMailBox* CFSMailClient::GetMailBoxByUidLC(const TFSMailMsgId aMailBoxId)
 {
-    NM_FUNCTION;
+    FUNC_LOG;
     CFSMailBox* mailBox = GetMailBoxByUidL( aMailBoxId );
     CleanupStack::PushL( mailBox );
     return mailBox;
@@ -160,8 +160,7 @@
 EXPORT_C CFSMailFolder* CFSMailClient::GetFolderByUidL( const TFSMailMsgId aMailBoxId,
 													   const TFSMailMsgId aFolderId )
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	CFSMailFolder* folder = NULL;
 	
 	// select plugin
@@ -182,8 +181,7 @@
 														 const TFSMailMsgId aMessageId,
 														 const TFSMailDetails aDetails)
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	CFSMailMessage* message = NULL;
     // select plugin
     CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMessageId);
@@ -203,9 +201,8 @@
 												   const TFSMailMsgId aFolderId,
 											 	   const RArray<TFSMailMsgId>& aMessages )
 {
-    NM_FUNCTION;
-    
-	CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId);
+    FUNC_LOG;
+	CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aFolderId);
 	if(plugin)
 	{
 		plugin->DeleteMessagesByUidL(aMailBoxId,aFolderId,aMessages);
@@ -218,8 +215,7 @@
 EXPORT_C TInt CFSMailClient::DeleteMailBoxByUidL( const TFSMailMsgId aMailBoxId,
  								  MFSMailRequestObserver& aOperationObserver )
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	// select plugin
 	CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId);
 	if(plugin)
@@ -245,7 +241,7 @@
 EXPORT_C TInt CFSMailClient::ListMailBoxes(const TFSMailMsgId aPlugin,
 											 RPointerArray<CFSMailBox>& aMailBoxes)
 {
-    NM_FUNCTION;
+    FUNC_LOG;
 
 	RArray<TFSMailMsgId> mailBoxList;
 	mailBoxList.Reset();
@@ -255,6 +251,8 @@
 	CFSMailBox *mailBox = NULL;	
     // </cmail>	
 	
+	iFWImplementation->GetPluginManager().RecheckPlugins();
+	
 	if(aPlugin.IsNullId())
 	{
 		for(TInt i=0;i<iFWImplementation->GetPluginManager().GetPluginCount();i++)
@@ -271,7 +269,7 @@
                         mailBox = plugin->GetMailBoxByUidL(mailBoxList[ii]) );
 				    if ( mailBox )
     				    {
-                        err = aMailBoxes.Append( mailBox );
+                        aMailBoxes.Append( mailBox );
                         }
 				// </cmail>
 					if(err != KErrNone)
@@ -311,7 +309,7 @@
                         mailBox = plugin->GetMailBoxByUidL(mailBoxList[i]) );
                     if ( mailBox )
                         {
-                        err = aMailBoxes.Append( mailBox );
+                        aMailBoxes.Append( mailBox );
                         }
                 // </cmail>				
 				if(err != KErrNone)
@@ -338,7 +336,7 @@
         						const TFSMailMsgId aFolderId, const TFSMailDetails aDetails,
         						const RArray<TFSMailSortCriteria>& aSorting)
 {
-    NM_FUNCTION;
+    FUNC_LOG;
 
 	MFSMailIterator* iterator = NULL;
 	MFSMailIterator* pluginIterator = NULL;
@@ -366,7 +364,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C MFSMailBrandManager& CFSMailClient::GetBrandManagerL( void )
 {
-    NM_FUNCTION;
+    FUNC_LOG;
 
 	if(iBrandManager == NULL)
 		{
@@ -387,8 +385,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::AddObserverL(MFSMailEventObserver& aObserver)
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	for(TInt i=0;i<iFWImplementation->GetPluginManager().GetPluginCount();i++)
 		{
 		CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByIndex(i);
@@ -404,8 +401,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::RemoveObserver(MFSMailEventObserver& aObserver)
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	for(TInt i=0;i<iFWImplementation->GetPluginManager().GetPluginCount();i++)
 	{
 		CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByIndex(i);
@@ -421,8 +417,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::UnregisterRequestObserver(TInt aRequestId)
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	for(TInt i=0;i<iFWImplementation->GetPluginManager().GetPluginCount();i++)
 	{
 		if(CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByIndex(i))
@@ -439,8 +434,7 @@
 EXPORT_C void CFSMailClient::SubscribeMailboxEventsL(TFSMailMsgId aMailBoxId,
 													 	MFSMailEventObserver& aObserver)
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	// select plugin
 	if(CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId))
 		{
@@ -455,8 +449,7 @@
 EXPORT_C void CFSMailClient::UnsubscribeMailboxEvents(TFSMailMsgId aMailBoxId,
 														MFSMailEventObserver& aObserver)
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	// select plugin
 	if(CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid(aMailBoxId))
 		{
@@ -470,7 +463,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C TInt CFSMailClient::WizardDataAvailableL()
 	{
-    NM_FUNCTION;
+    FUNC_LOG;
 	
 	TInt ret = KErrNone;
 	for(TInt i=0;i<iFWImplementation->GetPluginManager().GetPluginCount();i++)
@@ -497,7 +490,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C TInt CFSMailClient::AuthenticateL(MFSMailRequestObserver& aOperationObserver)
 	{
-    NM_FUNCTION;
+    FUNC_LOG;
 
 	TInt requestId(0);
 	
@@ -528,8 +521,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::CleanTempDirL( )
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
     iFWImplementation->GetPluginManager().CleanTempDirL();	
 	}
 
@@ -538,8 +530,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C TDesC& CFSMailClient::GetTempDirL( )
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	return iFWImplementation->GetPluginManager().GetTempDirL();
 	}
 
@@ -548,8 +539,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::CancelL( const TInt aRequestId )
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	iFWImplementation->GetPluginManager().CancelRequestL(aRequestId);
 	}
 
@@ -558,8 +548,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::CancelAllL( )
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 		iFWImplementation->GetPluginManager().CancelAllRequestsL();
 	}
 
@@ -568,8 +557,7 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::SetMailboxName( const TFSMailMsgId aMailboxId, const TDesC& aMailboxName )
 	{
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid( aMailboxId );
 	if ( plugin )
 		{
@@ -583,7 +571,8 @@
 EXPORT_C void CFSMailClient::PrepareMrDescriptionL(  const TFSMailMsgId& aMailBoxId,
                                                      const TFSMailMsgId& aMessageId )
     {
-    NM_FUNCTION;
+    FUNC_LOG;
+    CFSMailMessage* message = NULL;
     // select plugin
     CFSMailPlugin* plugin = iFWImplementation->GetPluginManager().GetPluginByUid( aMessageId );
     if ( plugin )
@@ -593,34 +582,12 @@
         }  
     }
 
-// <qmail>
-// -----------------------------------------------------------------------------
-// CFSMailClient::GetSignatureL
-// -----------------------------------------------------------------------------
-EXPORT_C HBufC* CFSMailClient::GetSignatureL( const TFSMailMsgId& aMailBoxId )
-    {
-    NM_FUNCTION;
-    HBufC* ret = NULL;
-    
-    // select plugin
-    CFSMailPlugin* plugin =
-        iFWImplementation->GetPluginManager().GetPluginByUid( aMailBoxId );
-    if ( plugin )
-        {
-        ret = plugin->GetSignatureL( aMailBoxId );
-        }
-
-    return ret;
-    }
-// </qmail>
-
 // -----------------------------------------------------------------------------
 // CFSMailClient::Close
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::Close()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	CFSMailClient* instance = Instance();
 	if(!instance)
 	{
@@ -644,18 +611,16 @@
 // -----------------------------------------------------------------------------
 CFSMailClient* CFSMailClient::Instance()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	return static_cast<CFSMailClient*>(Dll::Tls());
 }
 
 // -----------------------------------------------------------------------------
 // CFSMailClient::IncReferenceCount
 // -----------------------------------------------------------------------------
-EXPORT_C TInt CFSMailClient::IncReferenceCount()
+TInt CFSMailClient::IncReferenceCount()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	return ++iReferenceCount;
 }
 
@@ -664,8 +629,7 @@
 // -----------------------------------------------------------------------------
 TInt CFSMailClient::DecReferenceCount()
 {
-    NM_FUNCTION;
-    
+    FUNC_LOG;
 	return --iReferenceCount;
 }
 
@@ -674,8 +638,6 @@
 // -----------------------------------------------------------------------------
 EXPORT_C void CFSMailClient::ReleaseExtension( CEmailExtension* aExtension )
     {
-    NM_FUNCTION;
-    
     CExtendableEmail::ReleaseExtension( aExtension );
     }
 
@@ -684,8 +646,6 @@
 // -----------------------------------------------------------------------------
 EXPORT_C CEmailExtension* CFSMailClient::ExtensionL( const TUid& aInterfaceUid )
     {
-    NM_FUNCTION;
-    
     return CExtendableEmail::ExtensionL( aInterfaceUid );
     }