installationservices/swi/source/sisregistry/client/sisregistrysession.cpp
branchRCL_3
changeset 25 7333d7932ef7
parent 17 741e5bba2bd1
child 26 8b7f4e561641
--- a/installationservices/swi/source/sisregistry/client/sisregistrysession.cpp	Thu Aug 19 10:02:49 2010 +0300
+++ b/installationservices/swi/source/sisregistry/client/sisregistrysession.cpp	Tue Aug 31 15:21:33 2010 +0300
@@ -35,7 +35,7 @@
 #include "hashcontainer.h"
 #include "dessisdataprovider.h"
 #include "siscontroller.h"
-#include "cleanuputils.h"
+
 
 using namespace Swi;
 
@@ -380,7 +380,6 @@
 	
 EXPORT_C void RSisRegistrySession::RetrieveLogFileL(RPointerArray<CLogEntry>& aLogEntry)
  	{
-    CleanupResetAndDestroyPushL(aLogEntry); 	
  	HBufC8* buffer = SendReceiveBufferLC(EloggingFile);
   
  	RDesReadStream stream(*buffer);
@@ -409,7 +408,6 @@
  		}
  	 	
  	CleanupStack::PopAndDestroy(2,buffer);	//buffer,stream
- 	CleanupStack::Pop(&aLogEntry);
  	}
  
 HBufC8* RSisRegistrySession::SendReceiveBufferLC(TInt aMessage, TPtrC8 aInputBuffer, TInt aThirdArgument) 
@@ -451,11 +449,50 @@
 EXPORT_C Usif::TComponentId RSisRegistrySession::GetComponentIdForUidL(const TUid& aUid)
 	{
 	Usif::TComponentId componentId(0);
-	TPckg<Usif::TComponentId> componentIdPckg(componentId);
-	
+	TPckg<Usif::TComponentId> componentIdPckg(componentId);	
 	User::LeaveIfError(SendReceive(EComponentIdForUid, TIpcArgs(aUid.iUid, &componentIdPckg)));
 	return componentId;		
 	}
 
+EXPORT_C Usif::TComponentId RSisRegistrySession::GetComponentIdForPackageL(const TDesC& aPackageName, const TDesC& aVendorName) const
+    {           
+    Usif::TComponentId componentId(0);
+    TPckg<Usif::TComponentId> componentIdPckg(componentId);
+    User::LeaveIfError(SendReceive(EComponentIdForPackage, TIpcArgs(&aPackageName, &aVendorName, &componentIdPckg)));    
+    return componentId;     
+    }
+
+EXPORT_C void RSisRegistrySession::GetAppUidsForComponentL(Usif::TComponentId& aCompId, RArray<TUid>& aAppUids)
+    {
+    TPckgC<Usif::TComponentId> compId(aCompId);    
+    HBufC8* buffer = SendReceiveBufferLC(EAppUidsForComponent, static_cast<TPtrC8>(compId));        
+    RDesReadStream stream(*buffer);
+    CleanupClosePushL(stream);    
+    InternalizeArrayL(aAppUids, stream);
+    CleanupStack::PopAndDestroy(2, buffer);           
+    }
+
+EXPORT_C void RSisRegistrySession::GetComponentIdsForUidL(TUid& aPackageUid, RArray<Usif::TComponentId>& aComponentIds)
+    {
+    TPckgC<TUid> pkgUid(aPackageUid);    
+    HBufC8* buffer = SendReceiveBufferLC(EComponentIdsForPackageUid, static_cast<TPtrC8>(pkgUid));        
+    RDesReadStream stream(*buffer);
+    CleanupClosePushL(stream);    
+    InternalizeArrayL(aComponentIds, stream);
+    CleanupStack::PopAndDestroy(2, buffer);           
+    }
+
+EXPORT_C void RSisRegistrySession::AddAppRegInfoL(const TDesC& aAppRegFile)
+    {
+    TInt returnCode = SendReceive(EAddAppRegInfo, TIpcArgs(&aAppRegFile));
+    User::LeaveIfError(returnCode);
+    }
+
+EXPORT_C void RSisRegistrySession::RemoveAppRegInfoL(const TDesC& aAppRegFile)
+    {
+    TInt returnCode = SendReceive(ERemoveAppRegInfo, TIpcArgs(&aAppRegFile));
+    User::LeaveIfError(returnCode);
+    }
+
 #endif //SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK