home *** CD-ROM | disk | FTP | other *** search
/ PC World 2003 June / PCWorld_2003-06_cd.bin / KOMUNIK / MIRRORIT / SRC / HTTPSOCKET.H < prev    next >
C/C++ Source or Header  |  1998-03-10  |  3KB  |  118 lines

  1. #if !defined(AFX_HTTPSOCKET_H__229A7CE1_5CDE_11D1_AF0A_0000C0003048__INCLUDED_)
  2. #define AFX_HTTPSOCKET_H__229A7CE1_5CDE_11D1_AF0A_0000C0003048__INCLUDED_
  3.  
  4. #if _MSC_VER >= 1000
  5. #pragma once
  6. #endif // _MSC_VER >= 1000
  7. // HTTPSocket.h : header file
  8. //
  9.  
  10.  
  11.  
  12. /////////////////////////////////////////////////////////////////////////////
  13. // CHTTPSocket command target
  14.  
  15. class CHTTPSocket : public CAsyncSocket
  16. {
  17. // Attributes
  18. public:
  19.  
  20. // Operations
  21. public:
  22.     CHTTPSocket();
  23.     virtual ~CHTTPSocket();
  24.  
  25. // Overrides
  26. public:
  27.     void ReplaceStr(CString & str, CString from, CString to);
  28.     void unescape(CString & str);
  29.     CString domain(CString str);
  30.     void AddDump(CString str);
  31.     void AddLog(CString type, CString str);
  32.     BOOL m_recv;
  33.     CString basenet_loc;
  34.     CString location;
  35.     BOOL m_bRedirect;
  36.     CString mimeencode(CString str);
  37.     BOOL regularCompare(LPCSTR str, LPCSTR mask);
  38.     BOOL inserverlist(CString server, CString list);
  39.     BOOL m_bFileInited;
  40.     BOOL m_bError;
  41.     CString FormatTime(CTime time);
  42.     CTime ValidTime(CTime time);
  43.     CTime asc(CString str);
  44.     CTime RFC850(CString str);
  45.     CTime RFC1123(CString str);
  46.     CString m_filename;
  47.     int islocal(CString url);
  48.     int m_filestatus;
  49.     int initfile();
  50.     CString makelocal(CString url, CString sbase);
  51.     CString getfilename(CString url);
  52.     int * m_numBytes;
  53.     CString base;
  54.     CString expandedURL(CString rel, CString base);
  55.     BOOL tagLink(CString name, CString param);
  56.     CByteArray htmltemp;
  57.     CStringList * links;
  58.     CSession * session;
  59.     int OutputData(BYTE *odata, int len);
  60.     BOOL m_bDocument;
  61.     void StatusRead(int size);
  62.     BOOL m_bProgress;
  63.     CProgressCtrl * m_progress;
  64.     BOOL m_bFirstLine;
  65.     int m_iCode;
  66.     CMapStringToString m_Header;
  67.     CString m_sBlockRemain;
  68.     int ProcessHeader(int size);
  69.     BOOL m_bInHeader;
  70.     void SendRequest(CString request);
  71.     BOOL m_bSent;
  72.     CByteArray m_buf;
  73.     BOOL m_bClose;
  74.     CFile m_File;
  75.     BOOL m_bConnect;
  76.     // ClassWizard generated virtual function overrides
  77.     //{{AFX_VIRTUAL(CHTTPSocket)
  78.     public:
  79.     virtual void OnClose(int nErrorCode);
  80.     virtual void OnConnect(int nErrorCode);
  81.     virtual void OnReceive(int nErrorCode);
  82.     virtual void OnSend(int nErrorCode);
  83.     //}}AFX_VIRTUAL
  84.  
  85.     // Generated message map functions
  86.     //{{AFX_MSG(CHTTPSocket)
  87.         // NOTE - the ClassWizard will add and remove member functions here.
  88.     //}}AFX_MSG
  89.  
  90. // Implementation
  91. protected:
  92. private:
  93.     CString convert83c(CString str);
  94.     CString convert83fragc(CString str);
  95.     CString shortenc(CString str, int max);
  96.     CString shorten(CString str, int max);
  97.     CString convert83(CString str);
  98.     CString convert83frag(CString str);
  99.     CString strDelete(CString & str, int start, int count);
  100.     CString convertname(CString str);
  101.     int gethex(char c);
  102.     CString getname(CString str);
  103.     CString getpath(CString str);
  104.     int m_requestindex;
  105.     CString m_request;
  106. };
  107.  
  108.  
  109. int CreateDirectory2(CString dir);
  110. int CreateDirectoryTree(CString dir);
  111.  
  112. /////////////////////////////////////////////////////////////////////////////
  113.  
  114. //{{AFX_INSERT_LOCATION}}
  115. // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
  116.  
  117. #endif // !defined(AFX_HTTPSOCKET_H__229A7CE1_5CDE_11D1_AF0A_0000C0003048__INCLUDED_)
  118.