ESA JPIP server  0.1
http::Request Class Reference

Class used to identify a HTTP request (GET or POST). More...

#include <request.h>

Inheritance diagram for http::Request:
Collaboration diagram for http::Request:

Public Types

enum  Type { GET, POST, UNKNOWN }
 Request type enumeration. More...
 

Public Member Functions

 Request (Type type=Request::GET, const string &uri="/", const Protocol &protocol=Protocol(1, 1))
 Initializes the request. More...
 
bool Parse (const string &line)
 Parses a request from a string. More...
 
void ParseURI (const string &uri)
 Parses a URI from a string. More...
 
virtual void ParseParameters (istream &stream)
 Parses the parameters from an input stream. More...
 
virtual void ParseParameter (istream &stream, const string &param, string &value)
 Parses one parameter from an input stream. More...
 

Public Attributes

Type type
 Request type (GET or POST) More...
 
string object
 Object associated to the request. More...
 
Protocol protocol
 Protocol version used. More...
 
map< string, string > parameters
 Map with all the parameters when using the CGI form. More...
 

Friends

istream & operator>> (istream &in, Request &request)
 
ostream & operator<< (ostream &out, const Request &request)
 

Detailed Description

Class used to identify a HTTP request (GET or POST).

It is possible to use this class with standard streams.

See Also
Response

Member Enumeration Documentation

Request type enumeration.

Enumerator
GET 
POST 
UNKNOWN 

Constructor & Destructor Documentation

http::Request::Request ( Type  type = Request::GET,
const string &  uri = "/",
const Protocol protocol = Protocol(1, 1) 
)
inline

Initializes the request.

Parameters
typeRequest type (GET by default).
uriRequest URI ("/" by default).
protocolProtocol version (1.1 by default).

Member Function Documentation

bool http::Request::Parse ( const string &  line)

Parses a request from a string.

Parameters
lineString that contains the request to parse.
Returns
true if successful.

Here is the call graph for this function:

Here is the caller graph for this function:

void http::Request::ParseParameter ( istream &  stream,
const string &  param,
string &  value 
)
virtual

Parses one parameter from an input stream.

Parameters
streamInput stream.
paramParameter name.
valueParameter value.

Reimplemented in jpip::Request.

Here is the caller graph for this function:

void http::Request::ParseParameters ( istream &  stream)
virtual

Parses the parameters from an input stream.

Parameters
streamInput stream.

Reimplemented in jpip::Request.

Here is the call graph for this function:

Here is the caller graph for this function:

void http::Request::ParseURI ( const string &  uri)
inline

Parses a URI from a string.

Parameters
uriString that contains the URI to parse.

Here is the caller graph for this function:

Friends And Related Function Documentation

ostream& operator<< ( ostream &  out,
const Request request 
)
friend
istream& operator>> ( istream &  in,
Request request 
)
friend

Member Data Documentation

string http::Request::object

Object associated to the request.

map<string, string> http::Request::parameters

Map with all the parameters when using the CGI form.

Protocol http::Request::protocol

Protocol version used.

Type http::Request::type

Request type (GET or POST)


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