diff -r b9b00b134b0d -r d316aecb87fd applicationmanagement/server/inc/AMDownloadStore.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/applicationmanagement/server/inc/AMDownloadStore.h Tue Jul 13 04:01:20 2010 +0530 @@ -0,0 +1,146 @@ +/* + * Copyright (c) 2002-2004 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: Implementation of applicationmanagement components + * + */ + +#ifndef __CAMDOWNLOADSTORE_H__ +#define __CAMDOWNLOADSTORE_H__ + +#include +#include +#include "AMDeploymentComponent.h" +#include "appmgmtdownloadmgr.h" + + +namespace NApplicationManagement + { + + + // FORWARD DECLARATIONS + class CDeploymentComponent; + class CAMDwnldQTWrap; + + + class MDownloadMngrObserver + { + public: + virtual void ComponentDownloadComplete( + class CDeploymentComponent *aComponent, TInt iapid, + HBufC8* aServerId) = 0; + virtual TBool HasUidL(const TUid &aUid, + CDeploymentComponent *& aCompo, + CDeploymentComponent *aIgnored) = 0; + }; + + + + class CAMDownloadStore : public CActive + { + + private: + /** + * C++ default constructor. + */ + CAMDownloadStore(MDownloadMngrObserver& aObserver); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + public: + // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CAMDownloadStore* NewL(MDownloadMngrObserver& aObserver); + /** + * Destructor. + */ + virtual ~CAMDownloadStore(); + + public: + + void AddDownloadL(CDeploymentComponent *aComponent); + + void RunL(); + + void DoCancel(); + + void StartDownload(); + + TInt DownloadCount(); + + RPointerArray iDwnldStore; + MDownloadMngrObserver& iObserver; + + }; + + class CAMDwnldQTWrap : public CBase, public MDownloadCallback, public MDownloadMgrQTCallback + { + private: + /** + * C++ default constructor. + */ + CAMDwnldQTWrap(MDownloadMngrObserver& aObserver, CDeploymentComponent *aComponent); + + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + public: + // Constructors and destructor + + /** + * Two-phased constructor. + */ + static CAMDwnldQTWrap* NewL(MDownloadMngrObserver& aObserver, CDeploymentComponent *aComponent); + /** + * Destructor. + */ + virtual ~CAMDwnldQTWrap(); + + public: + void StartDownload(CDeploymentComponent *aComponent, TRequestStatus& aStatus); + + TInt getPendingDownloads(); + + + public: + void DownloadCompleteL(CDeploymentComponent *aComponent); + void DownloadCompleted(); + void DownloadFailed(TInt aDownloaderr); + void SetStatus(TInt aStatus); + + + public: + void DownloadComplete(class CDeploymentComponent *aComponent, + TInt aStatus); + TBool UidExistsL(const TUid &aUid, CDeploymentComponent *& aCompo, + CDeploymentComponent *aIgnored); + + public: + appmgmtdownloadmgr* appdwnld; + MDownloadMngrObserver& iObserver; + CDeploymentComponent *iComponent; + HBufC8* serverid; + TInt iap; + }; + + } + +#endif