📄 xmlparse0.h
字号:
#ifndef __XMLPARSE_H__
#define __XMLPARSE_H__
#include <e32base.h>
#include <aknprogressdialog.h>
#include <aknprogressdialog.h> // MProgressDialogCallback
#include "HTTPExampleEngine.h" // MHTTPExampleEngineObserver
#define MEM_FREE(p) if(NULL!=p) {delete p;p=NULL;};
class CBookInfo;
class CXMLparse : public CBase, public MHTTPExampleEngineObserver
{
public:
static CXMLparse* NewL();
static CXMLparse* NewLC();
~CXMLparse();
private:
void ConstructL();
CXMLparse();
public:
//注册
void Reg(const TDesC& aPhoneNum, const TDesC& aPassWord);
//登录
void Login(const TDesC& aPhoneNum, const TDesC& aPassWord);
//上传
void UpLoad(const TDesC& aPhoneNum, CArrayPtrSeg<CBookInfo>* aCardArray);
//下载
void DownLoad(const TDesC& aPhoneNum, const TDesC& aPassWord);
//取消
void Cancal();
//测试
void TestFun();
//获得服务器的响应值
const TInt GetResult();
//获得服务器状态值
const TInt GetServerState();
//复位响应
void ResetResult();
//复位状态
void ResetServerState();
//获得从服务器下载的名片数组
const CArrayPtrSeg<CBookInfo>* GetArray();
private:
// 上传的时候添加名片夹
void AddaCard(CBookInfo* aCard);
// 上传时的Body
void CreateBody(const TDesC& aPhoneNum, CArrayPtrSeg<CBookInfo>* aCardArray);
// 0注册,1登录,2下载
void CreateURL(TInt aState, const TDesC& aPhoneNum, const TDesC& aPassWord);
// 解析下载时的XML
void XML(const TDesC& aResponse);
private:
void ResponseStatusL(TInt aStatusCode, const TDesC& aStatusText);
void ResponseReceivedL(const TDesC& aResponse);
private:
TBuf<128> URLBasic; // 注册登录基本地址,需要替换标记位置
TInt iStactPos; // 状态值标识位置
TInt iPhoneNumPos; // 电话标识位置
TInt iPassWDPos; // 密码标识位置
TInt iStactLength; // 状态值标识长度
TInt iPhoneNumLength; // 电话标识长度
TInt iPassWDLength; // 密码标识长度
CHTTPExampleEngine* iEngine;
TInt iResult; // 服务器响应值
TInt iServerState;//与服务器连结情悦
HBufC* iBody; // 发送POST时的Body
HBufC* iCard; // 一个名片
CArrayPtrSeg<CBookInfo>* iCardArray;
};
class CBookInfo: public CBase
{
public:
static CBookInfo* NewL();
static CBookInfo* NewLC();
~CBookInfo();
protected:
CBookInfo();
void ConstructL();
public:
//Operation
//nServerUID, ClientID, ItemID
void SetItemID(TInt aID) {m_nItem_ID = aID;}
TInt GetItemID() {return m_nItem_ID;}
//Last Name
void SetLastName(const TDesC& aBuf);
HBufC* GetLastName() {return m_sLastName;}
//First name
void SetFirstName(const TDesC& aBuf);
HBufC* GetFirstName() {return m_sFirstName;}
//m_sTelephone
void SetTelephone(const TDesC& aBuf);
HBufC* GetTelephone() {return m_sTelephone;}
//m_sHomeTelephone
void SetHomeTelephone(const TDesC& aBuf);
HBufC* GetHomeTelephone() {return m_sHomeTelephone;}
//m_sBusinessTelephone
void SetBusinessTelephone(const TDesC& aBuf);
HBufC* GetBusinessTelephone() {return m_sBusinessTelephone;}
//m_sHomeMobile
void SetHomeMobileNumber(const TDesC& aBuf);
HBufC* GetHomeMobileNumber() {return m_sHomeMobile;}
//m_sModifyTime
void SetModifyTime(const TDesC& aBuf);
HBufC* GetModifyTime() {return m_sModifyTime;}
//m_sModifyTime
void SetModifyDate(const TDesC& aBuf);
HBufC* GetModifyDate() {return m_sModifyDate;}
private:
TInt m_nItem_ID;
HBufC* m_sLastName;
HBufC* m_sFirstName;
HBufC* m_sTelephone;
HBufC* m_sHomeTelephone;
HBufC* m_sBusinessTelephone;
HBufC* m_sHomeMobile;
HBufC* m_sModifyTime;
HBufC* m_sModifyDate;
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -