diff options
author | Frank Schmirler <schmirl@puter.linogate.de> | 2010-12-02 08:53:01 +0100 |
---|---|---|
committer | Frank Schmirler <schmirl@puter.linogate.de> | 2010-12-02 08:53:01 +0100 |
commit | 5e30711bfdb28085234a5ef6da4f4e44305ac3e4 (patch) | |
tree | d15809d23eeeed7fda55d9450b1af7c99d6eb5d6 /server/connectionHTTP.h | |
download | vdr-plugin-streamdev-5e30711bfdb28085234a5ef6da4f4e44305ac3e4.tar.gz vdr-plugin-streamdev-5e30711bfdb28085234a5ef6da4f4e44305ac3e4.tar.bz2 |
Snapshot 2007-03-20
Diffstat (limited to 'server/connectionHTTP.h')
-rw-r--r-- | server/connectionHTTP.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/server/connectionHTTP.h b/server/connectionHTTP.h new file mode 100644 index 0000000..d12c418 --- /dev/null +++ b/server/connectionHTTP.h @@ -0,0 +1,58 @@ +/* + * $Id: connectionHTTP.h,v 1.3 2005/02/11 16:44:15 lordjaxom Exp $ + */ + +#ifndef VDR_STREAMDEV_SERVERS_CONNECTIONHTTP_H +#define VDR_STREAMDEV_SERVERS_CONNECTIONHTTP_H + +#include "connection.h" +#include "server/livestreamer.h" + +#include <tools/select.h> + +class cChannel; +class cStreamdevLiveStreamer; + +class cConnectionHTTP: public cServerConnection { +private: + enum eHTTPStatus { + hsRequest, + hsHeaders, + hsBody, + hsFinished, + }; + + enum eHTTPJob { + hjTransfer, + hjListing, + }; + + std::string m_Request; + //std::map<std::string,std::string> m_Headers; TODO: later? + eHTTPStatus m_Status; + eHTTPJob m_Job; + // job: transfer + cStreamdevLiveStreamer *m_LiveStreamer; + const cChannel *m_Channel; + int m_Apid; + eStreamType m_StreamType; + // job: listing + const cChannel *m_ListChannel; + +protected: + bool ProcessRequest(void); + +public: + cConnectionHTTP(void); + virtual ~cConnectionHTTP(); + + virtual void Attach(void) { if (m_LiveStreamer != NULL) m_LiveStreamer->Attach(); } + virtual void Detach(void) { if (m_LiveStreamer != NULL) m_LiveStreamer->Detach(); } + + virtual bool Command(char *Cmd); + bool CmdGET(const std::string &Opts); + + virtual void Flushed(void); +}; + +#endif // VDR_STREAMDEV_SERVERS_CONNECTIONVTP_H |