diff -r 000000000000 -r 2f259fa3e83a commonuis/CommonUi/inc/DocAppInstHandler.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/commonuis/CommonUi/inc/DocAppInstHandler.h Tue Feb 02 01:00:49 2010 +0200 @@ -0,0 +1,134 @@ +/* +* Copyright (c) 2002-2008 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: header file for application installer handler. +* +*/ + +#ifndef APPINSTHANDLER_H +#define APPINSTHANDLER_H + +// INCLUDES +#include "DocDefaultHandler.h" +#include + +// FORWARD DECLARATIONS +class CDocAppInstLauncher; + +/** +* Handler for application intaller packages +*/ +NONSHARABLE_CLASS(CDocAppInstHandler) : public CDocDefaultHandler + { + public: // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CDocAppInstHandler* NewL( + const TDataType& aDataType, + const TUid& aUid, + CDocumentHandler* aDocDispatcher, + TDocServiceMode aServiceMode ); + + /** + * Destructor. + */ + virtual ~CDocAppInstHandler(); + + + protected: // New functions + + + /** + * Open installable file. + * + * @return KErrNone if success. If fail, a fail reason + * constant declared in CDocumentHandler.h + */ + TInt OpenFileEmbeddedL(RFile &aFileHandle); + + /** + * Open installable file. + * + * @return KErrNone if success. If fail, a fail reason + * constant declared in CDocumentHandler.h + */ + TInt OpenFileL(RFile &aFileHandle); + + /** + * Creates parameter store (iParamPckg) for given parameter list. + * + * @param aParams a parameter list to be passed. + */ + void AddToParamListL(const CAiwGenericParamList& aParams); + + + private: + + /** + * C++ default constructor. + */ + CDocAppInstHandler( + const TDataType& aDataType, + const TUid& aUid, + CDocumentHandler* aDocDispatcher, + TDocServiceMode aServiceMode ); + + /** + * C++ copy constructor + */ + CDocAppInstHandler( const CDocAppInstHandler& ); + + /** + * Prohibit the assignment operation + */ + CDocAppInstHandler operator=( const CDocAppInstHandler& ) const; + + /* + * Helper class which launches installer asyncronously + */ + CDocAppInstLauncher* iLauncher; + + /* + * If ETrue, we call Installer with parameters + */ + TBool iCallWithParams; + + /* + * Parameters for Application installer + */ + SwiUI::TInstallReqPckg* iParamPckg; + + /* + * Heap buffer the URL + * Owned + */ + HBufC* iHeapURL; + + /* + * Heap buffer the iParamPckg + 4 byte + URL(iHeapURL) + * Owned + */ + HBufC8* iParamDescriptor; + + /* + * indicate if we can use the iParamDescriptor + */ + TBool iUseDescriptor; + + }; + +#endif // APPINSTHANDLER_H + +// End of File