idlefw/src/framework/aicpscommandbuffer.cpp
branchRCL_3
changeset 15 a0713522ab97
parent 14 15e4dd19031c
child 16 b276298d5729
--- a/idlefw/src/framework/aicpscommandbuffer.cpp	Wed Mar 31 22:04:35 2010 +0300
+++ b/idlefw/src/framework/aicpscommandbuffer.cpp	Wed Apr 14 16:16:44 2010 +0300
@@ -31,7 +31,8 @@
 _LIT8( KCPSConfigurationIf, "IContentPublishing" );
 _LIT8( KCPS, "Service.ContentPublishing" );
 _LIT8( KExecuteAction, "ExecuteAction" );
-
+_LIT8( KExecuteMultipleActions, "ExecuteMultipleActions" );
+_LIT8( KFilters, "filters" );
 // ======== LOCAL FUNCTIONS ========
 
 // ======== MEMBER FUNCTIONS ========
@@ -235,17 +236,27 @@
 	   
     if(iCpsInterface)
         {
+		  __PRINTS( "CAiCpsCommandBuffer::DoFlush : Execute" );
         TInt pluginCount = iPlugins.Count();
+        CLiwDefaultList* pluginCmdList = CLiwDefaultList::NewLC();
+        
         for (TInt i=0; i < pluginCount; i++ )
             {
-            CLiwGenericParamList* inParamList  = iPlugins[i]->InParamListLC();
-            CLiwGenericParamList* outParamList  = CLiwGenericParamList::NewLC();
-            __PRINTS( "CAiCpsCommandBuffer::DoFlush : Execute" );
-            iCpsInterface->ExecuteCmdL( KExecuteAction, *inParamList, *outParamList);
-            
-            CleanupStack::PopAndDestroy( outParamList );
-            CleanupStack::PopAndDestroy( inParamList );
+            CLiwDefaultMap* inParamMap = iPlugins[i]->InParamMapLC();
+            pluginCmdList->AppendL( inParamMap );
+            CleanupStack::PopAndDestroy( inParamMap );            
             }
+        CLiwGenericParamList* inParamList  = CLiwGenericParamList::NewLC();
+        CLiwGenericParamList* outParamList  = CLiwGenericParamList::NewLC();
+        
+         TLiwGenericParam item( KFilters, TLiwVariant ( pluginCmdList));
+         inParamList->AppendL( item ); 
+      
+        iCpsInterface->ExecuteCmdL( KExecuteMultipleActions, *inParamList, *outParamList);
+       
+        CleanupStack::PopAndDestroy( outParamList );
+        CleanupStack::PopAndDestroy( inParamList );
+        CleanupStack::PopAndDestroy( pluginCmdList );
         }
     else
        {