ZFFramework
 
Loading...
Searching...
No Matches
ZFProtocolZFHttpRequest.h
Go to the documentation of this file.
1
5
6#ifndef _ZFI_ZFProtocolZFHttpRequest_h_
7#define _ZFI_ZFProtocolZFHttpRequest_h_
8
9#include "ZFCore/ZFProtocol.h"
10#include "ZFNet/ZFHttpRequest.h"
12
13// ============================================================
18 // ============================================================
19 // for request
20public:
25
33 virtual void nativeTaskDestroy(ZF_IN void *nativeTask) zfpurevirtual;
34
38 virtual void url(
39 ZF_IN void *nativeTask
40 , ZF_IN const zfstring &url
42
46 virtual void httpMethod(
47 ZF_IN void *nativeTask
50
54 virtual void header(
55 ZF_IN void *nativeTask
56 , ZF_IN const zfstring &key
57 , ZF_IN const zfstring &value
59
63 virtual void headerRemove(
64 ZF_IN void *nativeTask
65 , ZF_IN const zfstring &key
67
72 ZF_IN void *nativeTask
73 , ZF_IN const zfstring &key
75
79 virtual zfindex headerCount(ZF_IN void *nativeTask) zfpurevirtual;
80
84 virtual zfiter headerIter(ZF_IN void *nativeTask) zfpurevirtual;
89 ZF_IN void *nativeTask
90 , ZF_IN const zfiter &it
96 ZF_IN void *nativeTask
97 , ZF_IN const zfiter &it
102 virtual void headerIterValue(
103 ZF_IN void *nativeTask
104 , ZF_IN_OUT zfiter &it
105 , ZF_IN const zfstring &value
110 virtual void headerIterRemove(
111 ZF_IN void *nativeTask
112 , ZF_IN_OUT zfiter &it
114
118 virtual void body(
119 ZF_IN void *nativeTask
120 , ZF_IN const void *buffer
121 , ZF_IN zfindex byteSize
123
127 virtual zfstring body(ZF_IN void *nativeTask) zfpurevirtual;
128
132 virtual void request(ZF_IN void *nativeTask, ZF_IN ZFHttpResponse *response) zfpurevirtual;
133
137 virtual void requestCancel(ZF_IN void *nativeTask) zfpurevirtual;
138
139 // ============================================================
140 // for response
141public:
152 request->_ZFP_ZFHttpRequest_notifyResponse(response);
153 }
154
159 ZF_IN void *nativeTask
160 , ZF_IN const zfstring &key
162
167
171 virtual zfiter responseHeaderIter(ZF_IN void *nativeTask) zfpurevirtual;
176 ZF_IN void *nativeTask
177 , ZF_IN const zfiter &it
183 ZF_IN void *nativeTask
184 , ZF_IN const zfiter &it
187
189#endif // #ifndef _ZFI_ZFProtocolZFHttpRequest_h_
190
#define zffinal
dummy macro shows that a method or class is designed must not to be overrided
Definition ZFCoreTypeDef_ClassType.h:63
#define zfpurevirtual
dummy macro shows that a method is pure virtual method
Definition ZFCoreTypeDef_ClassType.h:68
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:180
#define ZF_IN_OUT
dummy macro that shows the param used as required input and output
Definition ZFCoreTypeDef_ClassType.h:196
_ZFT_t_zfbool zfbool
bool type
Definition ZFCoreTypeDef_CoreType.h:103
_ZFT_t_zfindex zfindex
similar to size_t, used for index and size only
Definition ZFCoreTypeDef_CoreType.h:154
zft_zfstring< zfchar > zfstring
see zft_zfstring
Definition ZFCoreTypeDef_StringType.h:15
http operation
v_ZFHttpMethod::ZFEnumType ZFHttpMethod
see v_ZFHttpMethod
Definition ZFHttpRequest.h:35
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
#define ZFLIB_ZFNet
used to export symbols
Definition ZFNetDef.h:15
protocol definitions for ZFFramework
#define ZFPROTOCOL_INTERFACE_END(ModuleName)
for more information, please refer to ZFPROTOCOL_INTERFACE_BEGIN
Definition ZFProtocol.h:414
#define ZFPROTOCOL_INTERFACE_BEGIN(ZFLIB_, ModuleName)
declare a protocol interface for ZFFramework
Definition ZFProtocol.h:408
http request util
Definition ZFHttpRequest.h:121
see ZFHttpRequest
Definition ZFHttpRequest.h:43
virtual void url(void *nativeTask, const zfstring &url)=0
change the request url
virtual void requestCancel(void *nativeTask)=0
cancel the request
virtual zfstring responseHeaderIterValue(void *nativeTask, const zfiter &it)=0
response header access
virtual zfstring responseHeaderIterKey(void *nativeTask, const zfiter &it)=0
response header access
virtual zfindex responseHeaderCount(void *nativeTask)=0
response header access
virtual void header(void *nativeTask, const zfstring &key, const zfstring &value)=0
set http header
virtual void body(void *nativeTask, const void *buffer, zfindex byteSize)=0
append bytes to body
virtual void nativeTaskDestroy(void *nativeTask)=0
destroy native task
virtual void headerIterValue(void *nativeTask, zfiter &it, const zfstring &value)=0
http header access
void notifyResponse(ZFHttpRequest *request, ZFHttpResponse *response)
implementation must notify when receive response
Definition ZFProtocolZFHttpRequest.h:151
virtual zfiter responseHeaderIter(void *nativeTask)=0
response header access
virtual void headerRemove(void *nativeTask, const zfstring &key)=0
remove http header
virtual void headerIterRemove(void *nativeTask, zfiter &it)=0
http header access
virtual zfindex headerCount(void *nativeTask)=0
http header access
virtual zfstring header(void *nativeTask, const zfstring &key)=0
get http header
virtual zfstring responseHeader(void *nativeTask, const zfstring &key)=0
get response header
virtual void request(void *nativeTask, ZFHttpResponse *response)=0
start the http request, impl must notify notifyResponse even if fail or error
virtual zfstring headerIterKey(void *nativeTask, const zfiter &it)=0
http header access
virtual void * nativeTaskCreate(ZFHttpRequest *request)=0
create native task
virtual zfbool httpsAvailable(void)=0
whether https supported
virtual void httpMethod(void *nativeTask, ZFHttpMethod httpMethod)=0
set http method
virtual zfstring body(void *nativeTask)=0
return the current body contents
virtual zfiter headerIter(void *nativeTask)=0
http header access
virtual zfstring headerIterValue(void *nativeTask, const zfiter &it)=0
http header access
iterator for ZFFramework
Definition zfiter.h:40