installationservices/swi/source/sislauncher/client/sislauncherclient.cpp
changeset 42 d17dc5398051
parent 33 8110bf1194d1
child 75 2d2d25361590
equal deleted inserted replaced
37:6e7b00453237 42:d17dc5398051
   301     User::LeaveIfError(SendReceive(EExecuteQueue));
   301     User::LeaveIfError(SendReceive(EExecuteQueue));
   302     
   302     
   303     }
   303     }
   304 
   304 
   305 #ifdef SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK
   305 #ifdef SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK
   306 EXPORT_C void RSisLauncherSession::ParseSwTypeRegFileL(RFile& aFile, RPointerArray<CSoftwareTypeRegInfo>& aSwTypeRegInfoArray)
   306 EXPORT_C void RSisLauncherSession::ParseSwTypeRegFileL(RFile& aFile, RPointerArray<Usif::CSoftwareTypeRegInfo>& aSwTypeRegInfoArray)
   307     {
   307     {
   308     // Pack the file handle
   308     // Pack the file handle
   309     TIpcArgs ipcArgs;
   309     TIpcArgs ipcArgs;
   310     aFile.TransferToServer(ipcArgs, 0, 1);
   310     aFile.TransferToServer(ipcArgs, 0, 1);
   311 
   311 
   474     }
   474     }
   475 
   475 
   476 
   476 
   477 EXPORT_C void RSisLauncherSession::NotifyNewAppsL(const RArray<TAppUpdateInfo>& aAppUpdateInfo)
   477 EXPORT_C void RSisLauncherSession::NotifyNewAppsL(const RArray<TAppUpdateInfo>& aAppUpdateInfo)
   478     {
   478     {
   479     if (aAppUpdateInfo.Count() > 0)
   479     TInt bufLen = sizeof(TInt);
   480         {
   480     const TInt appCount = aAppUpdateInfo.Count();
   481         TInt bufLen = sizeof(TInt);
   481     for (TInt i=0; i<appCount; ++i)
   482         const TInt appCount = aAppUpdateInfo.Count();
   482         {
   483         for (TInt i=0; i<appCount; ++i)
   483         bufLen += GetObjectSizeL(&aAppUpdateInfo[i]);
   484             {
   484         }
   485             bufLen += GetObjectSizeL(&aAppUpdateInfo[i]);
   485 
   486             }
   486     HBufC8* buffer = HBufC8::NewLC(bufLen);
   487 
   487     TPtr8 bufPtr(buffer->Des());
   488         HBufC8* buffer = HBufC8::NewLC(bufLen);
   488 
   489         TPtr8 bufPtr(buffer->Des());
   489     RDesWriteStream ws(bufPtr);
   490 
   490     CleanupClosePushL(ws);
   491         RDesWriteStream ws(bufPtr);
   491 
   492         CleanupClosePushL(ws);
   492     ws.WriteInt32L(appCount);
   493 
   493     for (TInt i=0; i<appCount; ++i)
   494         ws.WriteInt32L(appCount);
   494         {
   495         for (TInt i=0; i<appCount; ++i)
   495         const TAppUpdateInfo& info = aAppUpdateInfo[i];
   496             {
   496         ws << info;
   497             const TAppUpdateInfo& info = aAppUpdateInfo[i];
   497         }
   498             ws << info;
   498     ws.CommitL();
   499             }
   499     CleanupStack::PopAndDestroy(&ws);
   500         ws.CommitL();
   500     
   501         CleanupStack::PopAndDestroy(&ws);
   501     TIpcArgs ipcArgs(&bufPtr);
   502         
   502     User::LeaveIfError(SendReceive(ENotifyApparcForApps, ipcArgs));
   503         TIpcArgs ipcArgs(&bufPtr);
   503 
   504         User::LeaveIfError(SendReceive(ENotifyApparcForApps, ipcArgs));
   504     CleanupStack::PopAndDestroy(buffer);
   505 
       
   506         CleanupStack::PopAndDestroy(buffer);
       
   507         }
       
   508     }
   505     }
   509 
   506 
   510 EXPORT_C TAppUpdateInfo::TAppUpdateInfo()
   507 EXPORT_C TAppUpdateInfo::TAppUpdateInfo()
   511     {    
   508     {    
   512     }
   509     }