📄 downloadentity.h
字号:
#ifndef DOWNLOADENTITY_H_
#define DOWNLOADENTITY_H_
#include <e32base.h>
#include <f32file.h>
#include <aknprogressdialog.h>
#include <aknwaitdialog.h>
#include "MDownloadManagerObserver.h"
#include "HttpClientEngine.h"
// CLASS DECLARATION
#ifndef WEBCLIENTOBSERVER_H
#define WEBCLIENTOBSERVER_H
/**
* MWebClientObserver
* CHttpClientEngine passes events and responses body data with this interface.
* An instance of this class must be provided for construction of CHttpClientEngine.
*/
class MWebClientObserver
{
public:
virtual void ClientEvent( const TDesC& aEventDescription ) = 0;
virtual void ClientHeaderReceived( const TDesC& aHeaderData ) = 0;
virtual void ClientBodyReceived( const TDesC8& aBodyData ) = 0;
virtual void ClientSuccess() = 0;
virtual void ClientFailed() = 0;
};
#endif
class CDownloadEntity : public CBase
,public MWebClientObserver
,public MProgressDialogCallback
{
public:
static CDownloadEntity* NewL(RFs& aFs,MDownloadManagerObserver& aObserver );
~CDownloadEntity();
TBool iUsed;
public:
void ConstructL();
CDownloadEntity( RFs& aFs, MDownloadManagerObserver& aObserver );
void Initialize(const TDesC8& aUrl, const TDesC& aFileName);
public:
TInt GetID();
void Cancel();
public: // Functions from base classes
void ClientEvent( const TDesC& aEventDescription );
void ClientHeaderReceived( const TDesC& aHeaderData );
void ClientBodyReceived( const TDesC8& aBodyData );
void ClientSuccess();
void ClientFailed();
private:
void DialogDismissedL( TInt aButtonId );
MDownloadManagerObserver& iObserver;
CHttpClientEngine* iHttpClient;
HBufC* iFileName;
HBufC8* iUrl;
RFs iFs;
TInt iSize;
CAknWaitDialog* iWaitDialog;
};
#endif /*DOWNLOADENTITY_H_*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -