installationservices/swcomponentregistry/inc_private/scrrequestimpl.h
changeset 42 d17dc5398051
parent 33 8110bf1194d1
equal deleted inserted replaced
37:6e7b00453237 42:d17dc5398051
    30 #include "screntries_internal.h"
    30 #include "screntries_internal.h"
    31 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
    31 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
    32 #include "screntries.h"
    32 #include "screntries.h"
    33 #include "appregentries.h"
    33 #include "appregentries.h"
    34 #include "appreginfo.h"
    34 #include "appreginfo.h"
       
    35 #include <usif/scr/screntries_platform.h>
    35 
    36 
    36 namespace Usif
    37 namespace Usif
    37 	{
    38 	{
    38 	// constants
    39 	// constants
    39 	static const TLanguage KLangNone = TLanguage(0);
    40 	static const TLanguage KLangNone = TLanguage(0);
   120 		void GetIsComponentOrphanedL(const RMessage2& aMessage) const;
   121 		void GetIsComponentOrphanedL(const RMessage2& aMessage) const;
   121 		void GetLogFileHandleL(const RMessage2& aMessage) const;
   122 		void GetLogFileHandleL(const RMessage2& aMessage) const;
   122 		void FlushLogEntriesArrayL();
   123 		void FlushLogEntriesArrayL();
   123 		void GetIsComponentOnReadOnlyDriveL(const RMessage2& aMessage) const;
   124 		void GetIsComponentOnReadOnlyDriveL(const RMessage2& aMessage) const;
   124 		void GetIsComponentPresentL(const RMessage2& aMessage) const;
   125 		void GetIsComponentPresentL(const RMessage2& aMessage) const;
       
   126 		TBool IsComponentPresentL(TComponentId aComponentId) const;
   125 		void SetIsComponentPresentL(const RMessage2& aMessage);
   127 		void SetIsComponentPresentL(const RMessage2& aMessage);
   126 		
   128 		
   127 		// SIF Requests
   129 		// SIF Requests
   128 		void SetScomoStateL(const RMessage2& aMessage);
   130 		void SetScomoStateL(const RMessage2& aMessage);
   129 		void GetPluginUidWithMimeTypeL(const RMessage2& aMessage) const;
   131 		void GetPluginUidWithMimeTypeL(const RMessage2& aMessage) const;
   275 			{
   277 			{
   276 			EFileRegistered,
   278 			EFileRegistered,
   277 			EFileUnregistered
   279 			EFileUnregistered
   278 			};
   280 			};
   279 		
   281 		
   280 		enum TAccessMode
       
   281             {
       
   282             ETransactionalSid   = 0x0001,    // Sids requiring component/application transactional support, usually Installers/Execution layers
       
   283             EMaxAccessMode      = 0xFFFF
       
   284             };
       
   285 		
       
   286 		class TRollbackParams
   282 		class TRollbackParams
   287 			{
   283 			{
   288 		public:
   284 		public:
   289 			TRollbackParams(TInt aIdColumnVal, CScrRequestImpl& aReqImplHandle)
   285 			TRollbackParams(TInt aIdColumnVal, CScrRequestImpl& aReqImplHandle)
   290 				: iIdColumnVal(aIdColumnVal), iReqImplHandle(aReqImplHandle){}
   286 				: iIdColumnVal(aIdColumnVal), iReqImplHandle(aReqImplHandle){}
   324 		TBool BindAndProcessStatementObjectL(CStatement& aStatementObj, TLanguage aLanguage, TInt aValuesNum, VA_LIST aList) const;
   320 		TBool BindAndProcessStatementObjectL(CStatement& aStatementObj, TLanguage aLanguage, TInt aValuesNum, VA_LIST aList) const;
   325 		CStatement* CreateStatementObjectWithoutLocaleL(const TDesC& aStatement, TInt aValuesNum,...) const;		
   321 		CStatement* CreateStatementObjectWithoutLocaleL(const TDesC& aStatement, TInt aValuesNum,...) const;		
   326 		CStatement* CreateStatementObjectWithLocaleL(const TDesC& aStatement, TLanguage aLocale, TInt aValuesNum,...) const;
   322 		CStatement* CreateStatementObjectWithLocaleL(const TDesC& aStatement, TLanguage aLocale, TInt aValuesNum,...) const;
   327 		CStatement* CreateStatementObjectWithLocaleNoDowngradeL(const TDesC& aStatement, TLanguage aLocale, TInt aValuesNum,...) const;
   323 		CStatement* CreateStatementObjectWithLocaleNoDowngradeL(const TDesC& aStatement, TLanguage aLocale, TInt aValuesNum,...) const;
   328 		void BindStatementValuesL(CStatement& aStatement, TLanguage aLanguage, TInt aValuesNum, VA_LIST aList) const;
   324 		void BindStatementValuesL(CStatement& aStatement, TLanguage aLanguage, TInt aValuesNum, VA_LIST aList) const;
   329 		void GetComponentIdsHavingThePropertiesL(RArray<TComponentId>& aComponentIds, RPointerArray<CPropertyEntry> aProperties, TBool aDoIntersect) const;
   325 		void GetComponentIdsHavingThePropertiesL(RArray<TComponentId>& aComponentIds, RPointerArray<CPropertyEntry>& aProperties, RArray<CComponentFilter::TPropertyOperator>& aPropertyOperatorList, 
       
   326                                                      TBool aDoIntersect) const;
   330 		CStatement* CreateStatementObjectForComponentLocalizablesLC(const TDesC& aName, const TDesC& aVendor, TUint aSetFlag, TComponentId aComponentId  = 0 ) const;
   327 		CStatement* CreateStatementObjectForComponentLocalizablesLC(const TDesC& aName, const TDesC& aVendor, TUint aSetFlag, TComponentId aComponentId  = 0 ) const;
   331 		void GetComponentsHavingNameVendorL(RArray<TComponentId>& aComponentIds, const TDesC& aName, const TDesC& aVendor, TUint16 aSetFlag, TBool aDoIntersect) const;
   328 		void GetComponentsHavingNameVendorL(RArray<TComponentId>& aComponentIds, const TDesC& aName, const TDesC& aVendor, TUint16 aSetFlag, TBool aDoIntersect) const;
   332 		CComponentEntry* GetNextComponentEntryL(CStatement& aStmt, CComponentFilter& aFilter, TLanguage aLocale, CCompViewSubsessionContext* aSubsessionContext) const;
   329 		CComponentEntry* GetNextComponentEntryL(CStatement& aStmt, CComponentFilter& aFilter, TLanguage aLocale, CCompViewSubsessionContext* aSubsessionContext) const;
   333 		HBufC* GetNextFilePathL(CStatement& aStmt) const;
   330 		HBufC* GetNextFilePathL(CStatement& aStmt) const;
   334 		CComponentEntry* CreateComponentEntryFromStatementHandleL(CStatement& aStmt) const;
   331 		CComponentEntry* CreateComponentEntryFromStatementHandleL(CStatement& aStmt) const;
   346 		CGlobalComponentId* ParseGlobalComponendIdLC(const TDesC& aGlobalId) const;
   343 		CGlobalComponentId* ParseGlobalComponendIdLC(const TDesC& aGlobalId) const;
   347 		void GetGeneralDependencyListL(const TDesC& aSelectColumn, const TDesC& aConditionColumn, const TDesC& aConditionValue, RPointerArray<CVersionedComponentId> &aVerCompIdList) const;
   344 		void GetGeneralDependencyListL(const TDesC& aSelectColumn, const TDesC& aConditionColumn, const TDesC& aConditionValue, RPointerArray<CVersionedComponentId> &aVerCompIdList) const;
   348 		void ReadAndSetCommonComponentPropertyL(const RMessage2& aMessage, const TDesC& aPropertyColumn);
   345 		void ReadAndSetCommonComponentPropertyL(const RMessage2& aMessage, const TDesC& aPropertyColumn);
   349 		TBool HasFilesOnDriveL(TDriveUnit aDrive, TComponentId aComponentId);
   346 		TBool HasFilesOnDriveL(TDriveUnit aDrive, TComponentId aComponentId);
   350 		CStatement* OpenFileListStatementL(TComponentId aComponentId) const;
   347 		CStatement* OpenFileListStatementL(TComponentId aComponentId) const;
   351 		TBool IsSoftwareTypeExistingL(TUint32 aSwTypeId, TUint32 aSifPluginUid, TUint32 aInstallerSecureId, TUint32 aExecutionLayerSecureId, const RPointerArray<HBufC>& aMimeTypesArray, const RPointerArray<CLocalizedSoftwareTypeName>& aLocalizedNamesArray);
   348 		TBool IsSoftwareTypeExistingL(TUint32 aSwTypeId, TUint32 aSifPluginUid, RArray<TCustomAccessInfo>& aSidArray, const RPointerArray<HBufC>& aMimeTypesArray, const RPointerArray<CLocalizedSoftwareTypeName>& aLocalizedNamesArray, const TDesC& aLauncherExecutable);
   352 		void SubsessionAddLocalizableSoftwareTypeNameL(CStatement& aStmt, CComponentEntry& aEntry, TLanguage aLocale, CCompViewSubsessionContext* aSubsessionContext) const;
   349 		void SubsessionAddLocalizableSoftwareTypeNameL(CStatement& aStmt, CComponentEntry& aEntry, TLanguage aLocale, CCompViewSubsessionContext* aSubsessionContext) const;
   353 		TBool IsDriveReadOnlyL(TInt driveIndex) const;
   350 		TBool IsDriveReadOnlyL(TInt driveIndex) const;
   354 		TBool CheckForMediaPresenceL(TComponentId aComponentId) const;
   351 		TBool CheckForMediaPresenceL(TComponentId aComponentId) const;
   355 		
   352 		
   356 		TBool GetIntforConditionL(const TDesC& aSelectColumn, const TDesC& aTableInfo, const TDesC& aConditionColumn,TInt aConditionValue,TInt& aRetrievedValue) const;
   353 		TBool GetIntforConditionL(const TDesC& aSelectColumn, const TDesC& aTableInfo, const TDesC& aConditionColumn,TInt aConditionValue,TInt& aRetrievedValue) const;
   357 		TInt  GetServiceIdForDataTypeL(const TDesC& aType) const;
   354 		TInt  GetServiceIdForDataTypeL(const TDesC& aType) const;
   358 		TBool GetAppUidForServiceIdL(const TInt ServiceId, TUid& aAppUid) const;
   355 		TBool GetAppUidForServiceIdL(const TInt ServiceId, TUid& aAppUid) const;
   359 		TBool GetNearestAppLanguageL(TLanguage aRequiredLocale,TUid aAppUid,TLanguage& aFinalAppLocale) const;
   356 		TBool GetNearestAppLanguageL(TLanguage aRequiredLocale,TUid aAppUid,TLanguage& aFinalAppLocale) const;
   360 		void GetNearestAppLanguageForOpaqueDataL(TLanguage aRequiredLocale,TUid aAppUid,TUid aServiceUid,TLanguage& aFinalAppLocale) const;
   357 		void GetNearestAppLanguageForOpaqueDataL(TLanguage aRequiredLocale,TUid aAppUid,TUid aServiceUid,TLanguage& aFinalAppLocale) const;
       
   358 		void GetOperatorStringL(CComponentFilter::TDbOperator aOperator, HBufC*& aOperatorString) const;
   361 
   359 
   362 		// DB Version management
   360 		// DB Version management
   363 		void InitializeDbVersionL();
   361 		void InitializeDbVersionL();
   364 		void VerifyDbVersionCompatibilityL() const;
   362 		void VerifyDbVersionCompatibilityL() const;
   365 		
   363