uHTTP for C++
uHTTP::HTTPPacket Class Reference

#include <HTTPPacket.h>

Inheritance diagram for uHTTP::HTTPPacket:
uHTTP::HTTPRequest uHTTP::HTTPResponse

Public Member Functions

 HTTPPacket ()
 
 HTTPPacket (HTTPPacket *httpPacket)
 
 HTTPPacket (HTTPSocket *httpSock)
 
 HTTPPacket (uHTTP::InputStream *in)
 
 ~HTTPPacket ()
 
void init ()
 
void setVersion (const std::string &ver)
 
const char * getVersion ()
 
bool set (uHTTP::InputStream *in, bool onlyHeaders=false)
 
bool set (uHTTP::Socket *sock, bool onlyHeaders=false)
 
bool set (HTTPSocket *httpSock)
 
void set (HTTPPacket *httpPacket)
 
bool read (HTTPSocket *httpSock)
 
void setFirstLine (const std::string &value)
 
const char * getFirstLine ()
 
const char * getFirstLineToken (int num, std::string &tokenBuf)
 
bool hasFirstLine ()
 
size_t getNHeaders ()
 
bool addHeader (HTTPHeader *header)
 
bool addHeader (const std::string &name, const std::string &value)
 
HTTPHeadergetHeader (size_t n)
 
HTTPHeaderListgetHeaders ()
 
HTTPHeadergetHeader (const std::string &name)
 
void clearHeaders ()
 
bool hasHeader (const std::string &name)
 
void setHeader (const std::string &name, const std::string &value)
 
void setHeader (const std::string &name, int value)
 
void setHeader (const std::string &name, long value)
 
void setHeader (const std::string &name, size_t value)
 
void setHeader (HTTPHeader *header)
 
const char * getHeaderValue (const std::string &name)
 
void setStringHeader (const std::string &name, const std::string &value, const char startWith, const char endWith)
 
void setStringHeader (const std::string &name, const std::string &value)
 
const char * getStringHeaderValue (const std::string &name, const char startWith, const char endWith, std::string &buf)
 
const char * getStringHeaderValue (const std::string &name, std::string &buf)
 
void setIntegerHeader (const std::string &name, int value)
 
void setLongHeader (const std::string &name, long value)
 
void setSizetHeader (const std::string &name, size_t value)
 
int getIntegerHeaderValue (const std::string &name)
 
long getLongHeaderValue (const std::string &name)
 
size_t getLongLongHeaderValue (const std::string &name)
 
const char * getHeaderString (std::string &headerStr)
 
void setContent (const std::string &data, bool updateWithContentLength=true)
 
void setContent (std::string &data, bool updateWithContentLength=true)
 
const char * getContent ()
 
bool hasContent ()
 
void setContentInputStream (uHTTP::InputStream *in)
 
uHTTP::InputStreamgetContentInputStream ()
 
bool hasContentInputStream ()
 
void setContentType (const std::string &type)
 
const char * getContentType ()
 
const char * getCharSet (std::string &buf)
 
void setContentLength (size_t len)
 
size_t getContentLength ()
 
bool hasConnection ()
 
void setConnection (const std::string &value)
 
const char * getConnection ()
 
bool isCloseConnection ()
 
bool isKeepAliveConnection ()
 
bool hasContentRange ()
 
void setContentRange (long firstPos, long lastPos, long length)
 
void getContentRange (long range[])
 
long getContentRangeFirstPosition ()
 
long getContentRangeLastPosition ()
 
long getContentRangeInstanceLength ()
 
void setCacheControl (const std::string &directive)
 
void setCacheControl (const std::string &directive, int value)
 
void setCacheControl (int value)
 
const char * getCacheControl ()
 
void setUserAgent (const std::string &name)
 
const char * getUserAgent ()
 
void setAccept (const std::string &name)
 
const char * getAccept ()
 
void setServer (const std::string &name)
 
const char * getServer ()
 
void setHost (const std::string &host, int port)
 
void setHost (const std::string &host)
 
const char * getHost ()
 
void setDate (HTTPDate *date)
 
const char * getDate ()
 
bool hasTransferEncoding ()
 
void setTransferEncoding (const std::string &value)
 
const char * getTransferEncoding ()
 
bool isChunked ()
 
void clear ()
 

Private Attributes

HTTPHeaderList httpHeaderList
 
std::string firstLine
 
std::string content
 
std::string version
 
uHTTP::InputStreamcontentInput
 

Constructor & Destructor Documentation

◆ HTTPPacket() [1/4]

uHTTP::HTTPPacket::HTTPPacket ( )

◆ HTTPPacket() [2/4]

uHTTP::HTTPPacket::HTTPPacket ( HTTPPacket * httpPacket)

◆ HTTPPacket() [3/4]

uHTTP::HTTPPacket::HTTPPacket ( HTTPSocket * httpSock)

◆ HTTPPacket() [4/4]

uHTTP::HTTPPacket::HTTPPacket ( uHTTP::InputStream * in)

◆ ~HTTPPacket()

uHTTP::HTTPPacket::~HTTPPacket ( )

Member Function Documentation

◆ addHeader() [1/2]

bool uHTTP::HTTPPacket::addHeader ( const std::string & name,
const std::string & value )

◆ addHeader() [2/2]

bool uHTTP::HTTPPacket::addHeader ( HTTPHeader * header)
inline

◆ clear()

void uHTTP::HTTPPacket::clear ( )

◆ clearHeaders()

void uHTTP::HTTPPacket::clearHeaders ( )

◆ getAccept()

const char * uHTTP::HTTPPacket::getAccept ( )
inline

◆ getCacheControl()

const char * uHTTP::HTTPPacket::getCacheControl ( )
inline

◆ getCharSet()

const char * uHTTP::HTTPPacket::getCharSet ( std::string & buf)

◆ getConnection()

const char * uHTTP::HTTPPacket::getConnection ( )
inline

◆ getContent()

const char * uHTTP::HTTPPacket::getContent ( )
inline

◆ getContentInputStream()

uHTTP::InputStream * uHTTP::HTTPPacket::getContentInputStream ( )
inline

◆ getContentLength()

size_t uHTTP::HTTPPacket::getContentLength ( )
inline

◆ getContentRange()

void uHTTP::HTTPPacket::getContentRange ( long range[])

◆ getContentRangeFirstPosition()

long uHTTP::HTTPPacket::getContentRangeFirstPosition ( )
inline

◆ getContentRangeInstanceLength()

long uHTTP::HTTPPacket::getContentRangeInstanceLength ( )
inline

◆ getContentRangeLastPosition()

long uHTTP::HTTPPacket::getContentRangeLastPosition ( )
inline

◆ getContentType()

const char * uHTTP::HTTPPacket::getContentType ( )
inline

◆ getDate()

const char * uHTTP::HTTPPacket::getDate ( )
inline

◆ getFirstLine()

const char * uHTTP::HTTPPacket::getFirstLine ( )
inline

◆ getFirstLineToken()

const char * uHTTP::HTTPPacket::getFirstLineToken ( int num,
std::string & tokenBuf )

◆ getHeader() [1/2]

HTTPHeader * uHTTP::HTTPPacket::getHeader ( const std::string & name)

◆ getHeader() [2/2]

HTTPHeader * uHTTP::HTTPPacket::getHeader ( size_t n)

◆ getHeaders()

HTTPHeaderList & uHTTP::HTTPPacket::getHeaders ( )
inline

◆ getHeaderString()

const char * uHTTP::HTTPPacket::getHeaderString ( std::string & headerStr)

◆ getHeaderValue()

const char * uHTTP::HTTPPacket::getHeaderValue ( const std::string & name)
inline

◆ getHost()

const char * uHTTP::HTTPPacket::getHost ( )
inline

◆ getIntegerHeaderValue()

int uHTTP::HTTPPacket::getIntegerHeaderValue ( const std::string & name)
inline

◆ getLongHeaderValue()

long uHTTP::HTTPPacket::getLongHeaderValue ( const std::string & name)
inline

◆ getLongLongHeaderValue()

size_t uHTTP::HTTPPacket::getLongLongHeaderValue ( const std::string & name)
inline

◆ getNHeaders()

size_t uHTTP::HTTPPacket::getNHeaders ( )
inline

◆ getServer()

const char * uHTTP::HTTPPacket::getServer ( )
inline

◆ getStringHeaderValue() [1/2]

const char * uHTTP::HTTPPacket::getStringHeaderValue ( const std::string & name,
const char startWith,
const char endWith,
std::string & buf )

◆ getStringHeaderValue() [2/2]

const char * uHTTP::HTTPPacket::getStringHeaderValue ( const std::string & name,
std::string & buf )
inline

◆ getTransferEncoding()

const char * uHTTP::HTTPPacket::getTransferEncoding ( )
inline

◆ getUserAgent()

const char * uHTTP::HTTPPacket::getUserAgent ( )
inline

◆ getVersion()

const char * uHTTP::HTTPPacket::getVersion ( )
inline

◆ hasConnection()

bool uHTTP::HTTPPacket::hasConnection ( )
inline

◆ hasContent()

bool uHTTP::HTTPPacket::hasContent ( )
inline

◆ hasContentInputStream()

bool uHTTP::HTTPPacket::hasContentInputStream ( )
inline

◆ hasContentRange()

bool uHTTP::HTTPPacket::hasContentRange ( )

◆ hasFirstLine()

bool uHTTP::HTTPPacket::hasFirstLine ( )
inline

◆ hasHeader()

bool uHTTP::HTTPPacket::hasHeader ( const std::string & name)
inline

◆ hasTransferEncoding()

bool uHTTP::HTTPPacket::hasTransferEncoding ( )
inline

◆ init()

void uHTTP::HTTPPacket::init ( )

◆ isChunked()

bool uHTTP::HTTPPacket::isChunked ( )

◆ isCloseConnection()

bool uHTTP::HTTPPacket::isCloseConnection ( )

◆ isKeepAliveConnection()

bool uHTTP::HTTPPacket::isKeepAliveConnection ( )

◆ read()

bool uHTTP::HTTPPacket::read ( HTTPSocket * httpSock)

◆ set() [1/4]

void uHTTP::HTTPPacket::set ( HTTPPacket * httpPacket)

◆ set() [2/4]

bool uHTTP::HTTPPacket::set ( HTTPSocket * httpSock)

◆ set() [3/4]

bool uHTTP::HTTPPacket::set ( uHTTP::InputStream * in,
bool onlyHeaders = false )

◆ set() [4/4]

bool uHTTP::HTTPPacket::set ( uHTTP::Socket * sock,
bool onlyHeaders = false )

◆ setAccept()

void uHTTP::HTTPPacket::setAccept ( const std::string & name)
inline

◆ setCacheControl() [1/3]

void uHTTP::HTTPPacket::setCacheControl ( const std::string & directive)
inline

◆ setCacheControl() [2/3]

void uHTTP::HTTPPacket::setCacheControl ( const std::string & directive,
int value )

◆ setCacheControl() [3/3]

void uHTTP::HTTPPacket::setCacheControl ( int value)
inline

◆ setConnection()

void uHTTP::HTTPPacket::setConnection ( const std::string & value)
inline

◆ setContent() [1/2]

void uHTTP::HTTPPacket::setContent ( const std::string & data,
bool updateWithContentLength = true )
inline

◆ setContent() [2/2]

void uHTTP::HTTPPacket::setContent ( std::string & data,
bool updateWithContentLength = true )
inline

◆ setContentInputStream()

void uHTTP::HTTPPacket::setContentInputStream ( uHTTP::InputStream * in)
inline

◆ setContentLength()

void uHTTP::HTTPPacket::setContentLength ( size_t len)
inline

◆ setContentRange()

void uHTTP::HTTPPacket::setContentRange ( long firstPos,
long lastPos,
long length )

◆ setContentType()

void uHTTP::HTTPPacket::setContentType ( const std::string & type)
inline

◆ setDate()

void uHTTP::HTTPPacket::setDate ( HTTPDate * date)
inline

◆ setFirstLine()

void uHTTP::HTTPPacket::setFirstLine ( const std::string & value)
inline

◆ setHeader() [1/5]

void uHTTP::HTTPPacket::setHeader ( const std::string & name,
const std::string & value )

◆ setHeader() [2/5]

void uHTTP::HTTPPacket::setHeader ( const std::string & name,
int value )

◆ setHeader() [3/5]

void uHTTP::HTTPPacket::setHeader ( const std::string & name,
long value )

◆ setHeader() [4/5]

void uHTTP::HTTPPacket::setHeader ( const std::string & name,
size_t value )

◆ setHeader() [5/5]

void uHTTP::HTTPPacket::setHeader ( HTTPHeader * header)
inline

◆ setHost() [1/2]

void uHTTP::HTTPPacket::setHost ( const std::string & host)

◆ setHost() [2/2]

void uHTTP::HTTPPacket::setHost ( const std::string & host,
int port )

◆ setIntegerHeader()

void uHTTP::HTTPPacket::setIntegerHeader ( const std::string & name,
int value )
inline

◆ setLongHeader()

void uHTTP::HTTPPacket::setLongHeader ( const std::string & name,
long value )
inline

◆ setServer()

void uHTTP::HTTPPacket::setServer ( const std::string & name)
inline

◆ setSizetHeader()

void uHTTP::HTTPPacket::setSizetHeader ( const std::string & name,
size_t value )
inline

◆ setStringHeader() [1/2]

void uHTTP::HTTPPacket::setStringHeader ( const std::string & name,
const std::string & value )
inline

◆ setStringHeader() [2/2]

void uHTTP::HTTPPacket::setStringHeader ( const std::string & name,
const std::string & value,
const char startWith,
const char endWith )

◆ setTransferEncoding()

void uHTTP::HTTPPacket::setTransferEncoding ( const std::string & value)
inline

◆ setUserAgent()

void uHTTP::HTTPPacket::setUserAgent ( const std::string & name)
inline

◆ setVersion()

void uHTTP::HTTPPacket::setVersion ( const std::string & ver)
inline

Field Documentation

◆ content

std::string uHTTP::HTTPPacket::content
private

◆ contentInput

uHTTP::InputStream* uHTTP::HTTPPacket::contentInput
private

◆ firstLine

std::string uHTTP::HTTPPacket::firstLine
private

◆ httpHeaderList

HTTPHeaderList uHTTP::HTTPPacket::httpHeaderList
private

◆ version

std::string uHTTP::HTTPPacket::version
private

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