Nebula
Loading...
Searching...
No Matches
Http::HttpResponseReader Class Reference

#include <httpresponsereader.h>

Detailed Description

Decodes a response header from a HTTP server and optionally writes received content data to a provided stream.

Inherits IO::StreamReader.

Public Member Functions

 HttpResponseReader ()
 constructor
bool ReadResponse ()
 read the response
bool IsValidHttpResponse () const
 return true if this was a valid response
HttpStatus::Code GetStatusCode () const
 get the HTTP status code which was sent by the server
const IO::MediaTypeGetContentType () const
 get content type
SizeT GetContentLength () const
 get content length
Public Member Functions inherited from IO::StreamReader
 StreamReader ()
 constructor
virtual ~StreamReader ()
 destructor
void SetStream (const Ptr< Stream > &s)
 set stream to read from
const Ptr< Stream > & GetStream () const
 get currently set stream
bool HasStream () const
 return true if a stream is set
bool Eof () const
 return true if the stream has reached EOF
virtual bool Open ()
 begin reading from the stream
virtual void Close ()
 end reading from the stream
bool IsOpen () const
 return true if currently open
Public Member Functions inherited from Core::RefCounted
 RefCounted ()
 constructor
int GetRefCount () const
 get the current refcount
void AddRef ()
 increment refcount by one
void Release ()
 decrement refcount and destroy object if refcount is zero
bool IsInstanceOf (const Rtti &rtti) const
 return true if this object is instance of given class
bool IsInstanceOf (const Util::String &className) const
 return true if this object is instance of given class by string
bool IsInstanceOf (const Util::FourCC &classFourCC) const
 return true if this object is instance of given class by fourcc
bool IsA (const Rtti &rtti) const
 return true if this object is instance of given class, or a derived class
bool IsA (const Util::String &rttiName) const
 return true if this object is instance of given class, or a derived class, by string
bool IsA (const Util::FourCC &rttiFourCC) const
 return true if this object is instance of given class, or a derived class, by fourcc
const Util::StringGetClassName () const
 get the class name
Util::FourCC GetClassFourCC () const
 get the class FourCC code

Private Member Functions

 __DeclareClass (HttpResponseReader)

Private Attributes

bool isValidHttpResponse
HttpStatus::Code httpStatus
IO::MediaType contentType
SizeT contentLength

Additional Inherited Members

Static Public Member Functions inherited from Core::RefCounted
static void DumpRefCountingLeaks ()
 dump refcounting leaks, call at end of application (NEBULA_DEBUG builds only!)
Protected Member Functions inherited from Core::RefCounted
virtual ~RefCounted ()
 destructor (called when refcount reaches zero)
Protected Attributes inherited from IO::StreamReader
Ptr< Streamstream
bool isOpen
bool streamWasOpen

Constructor & Destructor Documentation

◆ HttpResponseReader()

Http::HttpResponseReader::HttpResponseReader ( )

constructor

Member Function Documentation

◆ __DeclareClass()

Http::HttpResponseReader::__DeclareClass ( HttpResponseReader )
private

◆ GetContentLength()

SizeT Http::HttpResponseReader::GetContentLength ( ) const
inline

get content length

◆ GetContentType()

const IO::MediaType & Http::HttpResponseReader::GetContentType ( ) const
inline

get content type

◆ GetStatusCode()

HttpStatus::Code Http::HttpResponseReader::GetStatusCode ( ) const
inline

get the HTTP status code which was sent by the server

◆ IsValidHttpResponse()

bool Http::HttpResponseReader::IsValidHttpResponse ( ) const
inline

return true if this was a valid response

◆ ReadResponse()

bool Http::HttpResponseReader::ReadResponse ( )

read the response

Member Data Documentation

◆ contentLength

SizeT Http::HttpResponseReader::contentLength
private

◆ contentType

IO::MediaType Http::HttpResponseReader::contentType
private

◆ httpStatus

HttpStatus::Code Http::HttpResponseReader::httpStatus
private

◆ isValidHttpResponse

bool Http::HttpResponseReader::isValidHttpResponse
private

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