HTTPRequest Class Reference

#include <httprequest.h>

Inheritance diagram for HTTPRequest:

BufferedSocketDeviceRequest

List of all members.


Detailed Description

Definition at line 87 of file httprequest.h.


Public Member Functions

 HTTPRequest ()
virtual ~HTTPRequest ()
void Reset ()
bool ParseRequest ()
void FormatErrorResponse (bool bServerError, const QString &sFaultString, const QString &sDetails)
void FormatActionResponse (NameValueList *pArgs)
void FormatFileResponse (const QString &sFileName)
long SendResponse (void)
long SendResponseFile (QString sFileName)
QString GetHeaderValue (const QString &sKey, QString sDefault)
bool GetKeepAlive ()
virtual Q_LONG BytesAvailable ()=0
virtual Q_ULONG WaitForMore (int msecs, bool *timeout=NULL)=0
virtual bool CanReadLine ()=0
virtual QString ReadLine (int msecs=0)=0
virtual Q_LONG ReadBlock (char *pData, Q_ULONG nMaxLen, int msecs=0)=0
virtual Q_LONG WriteBlock (char *pData, Q_ULONG nLen)=0
virtual Q_LONG WriteBlockDirect (char *pData, Q_ULONG nLen)=0
virtual QString GetHostAddress ()=0
virtual QString GetPeerAddress ()=0
virtual void Flush ()=0
virtual bool IsValid ()=0
virtual int getSocketHandle ()=0
virtual void SetBlocking (bool bBlock)=0
virtual bool IsBlocking ()=0

Static Public Member Functions

static QString & Encode (QString &sStr)
static QString GetMimeType (const QString &sFileExtension)
static long GetParameters (QString sParams, QStringMap &mapParams)

Public Attributes

RequestType m_eType
ContentType m_eContentType
QString m_sRawRequest
QString m_sBaseUrl
QString m_sMethod
QStringMap m_mapParams
QStringMap m_mapHeaders
QString m_sPayload
QString m_sProtocol
int m_nMajor
int m_nMinor
bool m_bSOAPRequest
QString m_sNameSpace
ResponseType m_eResponseType
QString m_sResponseTypeText
long m_nResponseStatus
QStringMap m_mapRespHeaders
QString m_sFileName
QTextStream m_response
IPostProcessm_pPostProcess

Protected Member Functions

RequestType SetRequestType (const QString &sType)
void SetRequestProtocol (const QString &sLine)
ContentType SetContentType (const QString &sType)
void SetServerHeaders (void)
void ProcessRequestLine (const QString &sLine)
bool ProcessSOAPPayload (const QString &sSOAPAction)
void ExtractMethodFromURL ()
QString GetResponseStatus (void)
QString GetResponseType (void)
QString GetAdditionalHeaders (void)
bool ParseRange (QString sRange, long long llSize, long long *pllStart, long long *pllEnd)
QString BuildHeader (long long nSize)

Protected Attributes

QByteArray m_aBuffer

Static Protected Attributes

static const char * m_szServerHeaders = "Accept-Ranges: bytes\r\n"

Constructor & Destructor Documentation

HTTPRequest::HTTPRequest (  ) 

Definition at line 91 of file httprequest.cpp.

virtual HTTPRequest::~HTTPRequest (  )  [inline, virtual]

Definition at line 160 of file httprequest.h.


Member Function Documentation

RequestType HTTPRequest::SetRequestType ( const QString &  sType  )  [protected]

Definition at line 142 of file httprequest.cpp.

Referenced by ProcessRequestLine().

void HTTPRequest::SetRequestProtocol ( const QString &  sLine  )  [protected]

Definition at line 569 of file httprequest.cpp.

Referenced by ProcessRequestLine().

ContentType HTTPRequest::SetContentType ( const QString &  sType  )  [protected]

Definition at line 582 of file httprequest.cpp.

Referenced by ParseRequest().

void HTTPRequest::SetServerHeaders ( void   )  [protected]

void HTTPRequest::ProcessRequestLine ( const QString &  sLine  )  [protected]

Definition at line 882 of file httprequest.cpp.

Referenced by ParseRequest().

bool HTTPRequest::ProcessSOAPPayload ( const QString &  sSOAPAction  )  [protected]

Definition at line 1063 of file httprequest.cpp.

Referenced by ParseRequest().

void HTTPRequest::ExtractMethodFromURL (  )  [protected]

Definition at line 1043 of file httprequest.cpp.

Referenced by ParseRequest().

QString HTTPRequest::GetResponseStatus ( void   )  [protected]

Definition at line 595 of file httprequest.cpp.

Referenced by BuildHeader(), and SendResponse().

QString HTTPRequest::GetResponseType ( void   )  [protected]

Definition at line 632 of file httprequest.cpp.

Referenced by BuildHeader().

QString HTTPRequest::GetAdditionalHeaders ( void   )  [protected]

Definition at line 717 of file httprequest.cpp.

Referenced by BuildHeader().

bool HTTPRequest::ParseRange ( QString  sRange,
long long  llSize,
long long *  pllStart,
long long *  pllEnd 
) [protected]

Definition at line 948 of file httprequest.cpp.

Referenced by SendResponseFile().

QString HTTPRequest::BuildHeader ( long long  nSize  )  [protected]

Definition at line 165 of file httprequest.cpp.

Referenced by SendResponse(), and SendResponseFile().

void HTTPRequest::Reset ( void   ) 

Definition at line 108 of file httprequest.cpp.

bool HTTPRequest::ParseRequest (  ) 

Definition at line 761 of file httprequest.cpp.

Referenced by HttpWorkerThread::ProcessWork().

void HTTPRequest::FormatErrorResponse ( bool  bServerError,
const QString &  sFaultString,
const QString &  sDetails 
)

Definition at line 457 of file httprequest.cpp.

Referenced by UPnp::FormatErrorResponse().

void HTTPRequest::FormatActionResponse ( NameValueList pArgs  ) 

void HTTPRequest::FormatFileResponse ( const QString &  sFileName  ) 

long HTTPRequest::SendResponse ( void   ) 

Definition at line 209 of file httprequest.cpp.

Referenced by HttpWorkerThread::ProcessWork().

long HTTPRequest::SendResponseFile ( QString  sFileName  ) 

Definition at line 291 of file httprequest.cpp.

Referenced by SendResponse().

QString & HTTPRequest::Encode ( QString &  sStr  )  [static]

QString HTTPRequest::GetHeaderValue ( const QString &  sKey,
QString  sDefault 
)

bool HTTPRequest::GetKeepAlive (  ) 

Definition at line 736 of file httprequest.cpp.

Referenced by BuildHeader(), and HttpWorkerThread::ProcessWork().

QString HTTPRequest::GetMimeType ( const QString &  sFileExtension  )  [static]

long HTTPRequest::GetParameters ( QString  sParams,
QStringMap mapParams 
) [static]

virtual Q_LONG HTTPRequest::BytesAvailable (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual Q_ULONG HTTPRequest::WaitForMore ( int  msecs,
bool timeout = NULL 
) [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual bool HTTPRequest::CanReadLine (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual QString HTTPRequest::ReadLine ( int  msecs = 0  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

Referenced by ParseRequest().

virtual Q_LONG HTTPRequest::ReadBlock ( char *  pData,
Q_ULONG  nMaxLen,
int  msecs = 0 
) [pure virtual]

Implemented in BufferedSocketDeviceRequest.

Referenced by ParseRequest().

virtual Q_LONG HTTPRequest::WriteBlock ( char *  pData,
Q_ULONG  nLen 
) [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual Q_LONG HTTPRequest::WriteBlockDirect ( char *  pData,
Q_ULONG  nLen 
) [pure virtual]

Implemented in BufferedSocketDeviceRequest.

Referenced by SendResponse(), and SendResponseFile().

virtual QString HTTPRequest::GetHostAddress (  )  [pure virtual]

virtual QString HTTPRequest::GetPeerAddress (  )  [pure virtual]

virtual void HTTPRequest::Flush (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual bool HTTPRequest::IsValid (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual int HTTPRequest::getSocketHandle (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

Referenced by SendResponse(), and SendResponseFile().

virtual void HTTPRequest::SetBlocking ( bool  bBlock  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.

virtual bool HTTPRequest::IsBlocking (  )  [pure virtual]

Implemented in BufferedSocketDeviceRequest.


Member Data Documentation

const char * HTTPRequest::m_szServerHeaders = "Accept-Ranges: bytes\r\n" [static, protected]

Definition at line 91 of file httprequest.h.

Referenced by GetAdditionalHeaders().

QByteArray HTTPRequest::m_aBuffer [protected]

Definition at line 94 of file httprequest.h.

Referenced by Reset(), and SendResponse().

Definition at line 100 of file httprequest.h.

Referenced by ParseRequest(), Reset(), and SetContentType().

Definition at line 108 of file httprequest.h.

Referenced by GetHeaderValue(), ParseRequest(), and Reset().

Definition at line 110 of file httprequest.h.

Referenced by ParseRequest(), ProcessSOAPPayload(), and Reset().

Definition at line 112 of file httprequest.h.

Referenced by Reset(), and SetRequestProtocol().

Definition at line 113 of file httprequest.h.

Referenced by BuildHeader(), GetKeepAlive(), Reset(), and SetRequestProtocol().

Definition at line 114 of file httprequest.h.

Referenced by BuildHeader(), GetKeepAlive(), Reset(), and SetRequestProtocol().

Definition at line 118 of file httprequest.h.

Referenced by FormatActionResponse(), ProcessSOAPPayload(), and Reset().

Definition at line 123 of file httprequest.h.

Referenced by BuildHeader(), and SendResponseFile().

Definition at line 132 of file httprequest.h.

Referenced by Eventing::HandleSubscribe(), HttpWorkerThread::ProcessWork(), and Reset().


The documentation for this class was generated from the following files:

Generated on Sat Sep 4 05:16:02 2010 for MythTV by  doxygen 1.5.5