00001 #ifndef gNET_HTTP_REQUEST_X_H 00002 #define gNET_HTTP_REQUEST_X_H 00003 00004 #include "glist.h" 00005 00006 #ifdef DEBUG_HIO // Http I/Output 00007 #define DBGPRINT_HIO(args...) printf(args) 00008 #else 00009 #define DBGPRINT_HIO(args...) ; 00010 #endif //DEBUG_HIO 00011 //////////////////////////////////////////////////////////// 00012 class gHttpRequestList : public gList { 00013 public: 00014 gHttpRequestList () ; 00015 virtual ~gHttpRequestList () { 00016 } 00017 00018 // Public data-members 00019 t_int32 iContentLength; 00020 gList lText; 00021 00022 // Get methods 00023 virtual unsigned NLines () { 00024 return lText.N(); 00025 } 00026 00027 virtual bool IsText () { 00028 return NLines()>0; 00029 } 00030 00031 virtual unsigned FindHeadFirst (char* colonStr) ; 00032 virtual unsigned FindHeadFullFirst (char* fullStrWithColon) ; 00033 00034 // I/O methods 00035 virtual gHttpRequestList& CopyRequest (gHttpRequestList& lReq) ; 00036 00037 virtual bool Consolidate () ; 00038 00039 protected: 00040 int thisAdjustColonStr (char* colonStr, gString& sColon) ; 00041 00042 private: 00043 // Operators,empty 00044 gHttpRequestList (gHttpRequestList& ) ; //empty 00045 gHttpRequestList& operator= (gHttpRequestList& ) ; //empty 00046 }; 00047 //////////////////////////////////////////////////////////// 00048 #endif //gNET_HTTP_REQUEST_X_H 00049