diff -r e9eae96aa117 -r 4697dfb2d7ad messagingappbase/mce/inc/mceiaupdateutils.h --- a/messagingappbase/mce/inc/mceiaupdateutils.h Tue Jan 26 11:55:08 2010 +0200 +++ b/messagingappbase/mce/inc/mceiaupdateutils.h Tue Feb 02 00:08:43 2010 +0200 @@ -24,6 +24,7 @@ #include // forward declarations go here: +class CMceUi; class CIAUpdate; class CIAUpdateParameters; @@ -38,7 +39,7 @@ * @endcode * */ -class CMceIAUpdateUtils : public CBase, +class CMceIAUpdateUtils : public CActive, public MIAUpdateObserver { public: @@ -47,7 +48,7 @@ * Two-phased constructor. * @param aAppUid Uid of the app for which update needs to be checked. */ - static CMceIAUpdateUtils* NewL(); + static CMceIAUpdateUtils* NewL(CMceUi& aMceUi); /** @@ -55,18 +56,22 @@ */ virtual ~CMceIAUpdateUtils(); - /** - * Start IA update process. - * @param aAppUid Uid of the app for which update needs to be checked. + void StartL( const TUid aAppUid ); +protected: + + /** + * From CActive */ - void StartL( const TUid aAppUid ); + void RunL(); + + void DoCancel(); private: - + /** * C++ default constructor. */ - CMceIAUpdateUtils(); + CMceIAUpdateUtils(CMceUi& aMceUi); /** * By default Symbian 2nd phase constructor is private. @@ -77,6 +82,17 @@ * Cleanup function. */ void Delete(); + + /** + * For Setting the active object active immediately. + */ + void CompleteSelf(); + + /** + * Start IA update process. + * @param aAppUid Uid of the app for which update needs to be checked. + */ + void DoStartL(TUid aAppUid); private: // From MIAUpdateObserver @@ -136,6 +152,10 @@ * Own. */ CIAUpdateParameters* iParameters; + + TUid iAppUid; + + CMceUi& iMceUi; };