- Main Page
- Namespaces
- Classes
- Files
- Directories

- File List
- File Members

# WebClientSocket.h

    00001 #pragma once
    00002
    00003 class CWebServer;
    00004
    00005 class CWebClientSocket : public CAsyncSocket
    00006 {
    00007         CWebServer* m_pWebServer;
    00008         CMainFrame* m_pMainFrame;
    00009
    00010         CString m_hdr;
    00011
    00012         struct cookie_attribs {CString path, expire, domain;};
    00013         CAtlMap<CString, cookie_attribs, CStringElementTraits<CString> > m_cookieattribs;
    00014
    00015         void Clear();
    00016         void Header();
    00017
    00018 protected:
    00019         void OnReceive(int nErrorCode);
    00020         void OnClose(int nErrorCode);
    00021
    00022 public:
    00023         CWebClientSocket(CWebServer* pWebServer, CMainFrame* pMainFrame);
    00024         virtual ~CWebClientSocket();
    00025
    00026         bool SetCookie(CString name, CString value = _T(""), __time64_t expire = -1, CString path = _T("/"), CString domain = _T(""));
    00027
    00028         typedef CAtlMap<CString, CString, CStringElementTraits<CString>, CStringElementTraits<CString> > CAtlStringMap;
    00029
    00030         CString m_sessid;
    00031         CString m_cmd, m_path, m_query, m_ver;
    00032         CStringA m_data;
    00033         CAtlStringMap m_hdrlines;
    00034         CAtlStringMap m_get, m_post, m_cookie;
    00035         CAtlStringMap m_request;
    00036
    00037         bool OnCommand(CStringA& hdr, CStringA& body, CStringA& mime);
    00038         bool OnIndex(CStringA& hdr, CStringA& body, CStringA& mime);
    00039         bool OnBrowser(CStringA& hdr, CStringA& body, CStringA& mime);
    00040         bool OnControls(CStringA& hdr, CStringA& body, CStringA& mime);
    00041         bool OnStatus(CStringA& hdr, CStringA& body, CStringA& mime);
    00042     bool OnError404(CStringA& hdr, CStringA& body, CStringA& mime);
    00043     bool OnPlayer(CStringA& hdr, CStringA& body, CStringA& mime);
    00044     bool OnSnapShotJpeg(CStringA& hdr, CStringA& body, CStringA& mime);
    00045     bool OnConvRes(CStringA& hdr, CStringA& body, CStringA& mime);
    00046 };