OSDN Git Service

update libMiMic
[mimic/MiMicSDK.git] / lib / src / http / NyLPC_cHttpNullRequestHeaderParser.h
1 /*********************************************************************************\r
2  * PROJECT: MiMic\r
3  * --------------------------------------------------------------------------------\r
4  *\r
5  * This file is part of MiMic\r
6  * Copyright (C)2011 Ryo Iizuka\r
7  *\r
8  * MiMic is free software: you can redistribute it and/or modify\r
9  * it under the terms of the GNU Lesser General Public License as published\r
10  * by the Free Software Foundation, either version 3 of the License, or\r
11  * (at your option) any later version.\r
12  *\r
13  * This program is distributed in the hope that it will be useful,\r
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
16  * GNU General Public License for more details.\r
17  *\r
18  * You should have received a copy of the GNU Lesser General Public License\r
19  * along with this program.  If not, see <http://www.gnu.org/licenses/>.\r
20  *\r
21  * For further information please contact.\r
22  *  http://nyatla.jp/\r
23  *  <airmail(at)ebony.plala.or.jp> or <nyatla(at)nyatla.jp>\r
24  *\r
25  *********************************************************************************/\r
26 #ifndef NYLPC_CHTTPNULLHTTPHEADERPARSER_H_\r
27 #define NYLPC_CHTTPNULLHTTPHEADERPARSER_H_\r
28 #include "NyLPC_cHttpBasicHeaderParser.h"\r
29 \r
30 #ifdef __cplusplus\r
31 extern "C" {\r
32 #endif /* __cplusplus */\r
33 \r
34 /**\r
35  * URLが最大31文字までの、短いHttpリクエストを処理します。\r
36  * このクラスは、NyLPC_TBasicHttpHeader_tにキャストできます。\r
37  */\r
38 typedef struct NyLPC_TcHttpNullReqestHeaderParser NyLPC_TcHttpNullRequestHeaderParser_t;\r
39 \r
40 \r
41 \r
42 struct NyLPC_TcHttpNullReqestHeaderParser{\r
43     NyLPC_TcHttpBasicHeaderParser_t super;\r
44     struct NyLPC_THttpBasicHeader _header;\r
45 };\r
46 \r
47 void NyLPC_cHttpNullRequestHeaderParser_initialize(NyLPC_TcHttpNullRequestHeaderParser_t* i_inst);\r
48 \r
49 #define NyLPC_cHttpNullRequestHeaderParser_finalize(i_inst) NyLPC_cHttpBasicHeaderParser_finalize(i_inst);\r
50 \r
51 /**\r
52  * parseInit,parseStream,parseFinishを一括で実行します。\r
53  */\r
54 NyLPC_TBool NyLPC_cHttpNullRequestHeaderParser_parse(NyLPC_TcHttpNullRequestHeaderParser_t* i_inst,NyLPC_TcHttpStream_t* i_stream);\r
55 \r
56 \r
57 /** override\r
58  */\r
59 #define NyLPC_cHttpNullRequestHeaderParser_parseInit(i_inst) NyLPC_cHttpBasicHeaderParser_parseInit(&((i_inst)->super),&((i_inst)->_header))\r
60 \r
61 /** override\r
62  */\r
63 #define NyLPC_cHttpNullRequestHeaderParser_parseFinish(i_inst) NyLPC_cHttpBasicHeaderParser_parseFinish(&((i_inst)->super),&((i_inst)->_header))\r
64 \r
65 /** override\r
66  */\r
67 #define NyLPC_cHttpNullRequestHeaderParser_parseChar(i_inst,i_c,i_size) NyLPC_cHttpBasicHeaderParser_parseChar(&((i_inst)->super),i_c,i_size,&((i_inst)->_header));\r
68 \r
69 /** override\r
70  */\r
71 #define NyLPC_cHttpNullRequestHeaderParser_parseStream(i_inst,i_stream) NyLPC_cHttpBasicHeaderParser_parseStream(&((i_inst)->super),i_stream,&((i_inst)->_header))\r
72 \r
73 \r
74 \r
75 #ifdef __cplusplus\r
76 }\r
77 #endif /* __cplusplus */\r
78 \r
79 #endif /* NYLPC_CHTTPSHORTHTTPHEADERPARSER_H_ */\r