diff -r 7333d7932ef7 -r 8b7f4e561641 appinstaller/AppinstUi/sisxsifplugin/inc/sisxsifpluginactiveimpl.h --- a/appinstaller/AppinstUi/sisxsifplugin/inc/sisxsifpluginactiveimpl.h Tue Aug 31 15:21:33 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,148 +0,0 @@ -/* -* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: CSisxSifPluginActiveImpl implements active object that -* handles installation operations requested via -* CSisxSifPlugin interface. -* -*/ - -#ifndef C_SISXSIFPLUGINIMPL_H -#define C_SISXSIFPLUGINIMPL_H - -#include // CActive -#include // MUiHandler -#include // TSecurityContext, COpaqueNamedParams -#include // TErrorCategory -#include // RFs, RFile -#include // RResourceFile - -namespace Swi -{ - class CAsyncLauncher; - class CInstallPrefs; -} - -namespace Usif -{ - class CComponentEntry; - class CSisxSifPluginUiHandlerBase; - class CSisxSifPluginInstallParams; - class CSisxSifPluginErrorHandler; - - /** - * SISX SIF plugin active implementation - * Universal Software Install Framework (USIF) plugin for native SISX - * installation. CSisxSifPluginActiveImpl is active object that takes - * care of SISX installation operations. - */ - class CSisxSifPluginActiveImpl : public CActive - { - public: // constructors and destructor - static CSisxSifPluginActiveImpl* NewL(); - ~CSisxSifPluginActiveImpl(); - - public: // from CActive - void DoCancel(); - void RunL(); - TInt RunError( TInt aError ); - - public: // new functions - void GetComponentInfo( const TDesC& aFileName, const TSecurityContext& aSecurityContext, - CComponentInfo& aComponentInfo, TRequestStatus& aStatus ); - void GetComponentInfo( RFile& aFileHandle, const TSecurityContext& aSecurityContext, - CComponentInfo& aComponentInfo, TRequestStatus& aStatus ); - void Install( const TDesC& aFileName, const TSecurityContext& aSecurityContext, - const COpaqueNamedParams& aArguments, COpaqueNamedParams& aResults, - TRequestStatus& aStatus ); - void Install( RFile& aFileHandle, const TSecurityContext& aSecurityContext, - const COpaqueNamedParams& aArguments, COpaqueNamedParams& aResults, - TRequestStatus& aStatus ); - void Uninstall( TComponentId aComponentId, const TSecurityContext& aSecurityContext, - const COpaqueNamedParams& aArguments, COpaqueNamedParams& aResults, - TRequestStatus& aStatus ); - void Activate( TComponentId aComponentId, const TSecurityContext& aSecurityContext, - TRequestStatus& aStatus ); - void Deactivate( TComponentId aComponentId, const TSecurityContext& aSecurityContext, - TRequestStatus& aStatus ); - - private: // new functions - CSisxSifPluginActiveImpl(); - void ConstructL(); - void CommonRequestPreambleL( TRequestStatus& aStatus ); - void CommonRequestPreambleL( const COpaqueNamedParams& aInputParams, - COpaqueNamedParams& aOutputParams, TRequestStatus& aStatus ); - void CompleteSelf( TInt aResult ); - void CreateUiHandlerL(); - TBool IsSilentMode(); - void CompleteClientRequest( TInt aResult ); - void DoGetComponentInfoL( CComponentInfo& aComponentInfo, TRequestStatus& aStatus ); - void DoInstallL( const TSecurityContext& aSecurityContext, - const COpaqueNamedParams& aInputParams, COpaqueNamedParams& aOutputParams, - TRequestStatus& aStatus ); - void DoUninstallL( TComponentId aComponentId, const COpaqueNamedParams& aInputParams, - COpaqueNamedParams& aOutputParams, TRequestStatus& aStatus ); - void DoActivateL( TComponentId aComponentId, TRequestStatus& aStatus ); - void DoDeactivateL( TComponentId aComponentId, TRequestStatus& aStatus ); - void DoHandleErrorL( TInt aError ); - void SetFileL( const TDesC& aFileName ); - void SetFile( RFile& aFileHandle ); - TComponentId GetLastInstalledComponentIdL(); - void GetComponentAndUidL( TComponentId aComponentId, CComponentEntry& aEntry, TUid& aUid ) const; - TBool RequiresUserCapabilityL( const CComponentInfo::CNode& aRootNode ); - void SetInstallPrefsRevocationServerUriL( const TDesC& aUri ); - void UpdateInstallPrefsForPerformingOcspL(); - void StartInstallingL(); - void StartSilentInstallingL(); - void StartSilentUninstallingL(); - void FinalizeInstallationL(); - void UpdateStartupListL(); - void FillDeviceSupportedLanguagesL(); - - private: // data - RFs iFs; - Swi::CAsyncLauncher* iAsyncLauncher; - CSisxSifPluginUiHandlerBase* iUiHandler; - Swi::CInstallPrefs* iInstallPrefs; - TRequestStatus* iClientStatus; - const COpaqueNamedParams* iInputParams; // not owned - COpaqueNamedParams* iOutputParams; // not owned - CSisxSifPluginInstallParams* iInstallParams; - CSisxSifPluginErrorHandler* iErrorHandler; - CComponentInfo* iComponentInfo; - TBool iHasAllFilesCapability; - HBufC* iFileName; - RFile* iFileHandle; // not owned - enum TOperationType - { - ENoOperation, - EGetComponentInfo, - EInstall, - EUninstall, - EActivate, - EDeactivate - } iOperation; - enum TPhase - { - ENotActive, - EPreprocessing, - ERunningOperation, - EPostprocessing - } iPhase; - RArray iDeviceSupportedLanguages; - }; - -} // namespace Usif - -#endif // C_SISXSIFPLUGINIMPL_H -