Open Lighting Architecture  Latest Git
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Functions
ola::http Namespace Reference

Detailed Description

The embedded HTTP server.

Classes

class  HTTPRequest
 
class  HTTPResponse
 
class  HTTPServer
 The base HTTP Server. More...
 
class  OlaHTTPServer
 

Functions

static int AddHeaders (void *cls, enum MHD_ValueKind kind, const char *key, const char *value)
 Called by MHD_get_connection_values to add headers to a request object. More...
 
int IteratePost (void *request_cls, enum MHD_ValueKind kind, const char *key, const char *filename, const char *content_type, const char *transfer_encoding, const char *data, uint64_t off, size_t size)
 Called by MHD_create_post_processor to iterate over the post form data. More...
 
static int HandleRequest (void *http_server_ptr, struct MHD_Connection *connection, const char *url, const char *method, const char *version, const char *upload_data, size_t *upload_data_size, void **ptr)
 Called whenever a new request is made. More...
 
void RequestCompleted (void *, struct MHD_Connection *, void **request_cls, enum MHD_RequestTerminationCode)
 Called when a request completes. More...
 

Function Documentation

static int ola::http::AddHeaders ( void *  cls,
enum MHD_ValueKind  kind,
const char *  key,
const char *  value 
)
static

Called by MHD_get_connection_values to add headers to a request object.

Parameters
clsa pointer to an HTTPRequest object.
kindthe source of the key-value pair
keythe header name
valuethe header value
static int ola::http::HandleRequest ( void *  http_server_ptr,
struct MHD_Connection *  connection,
const char *  url,
const char *  method,
const char *  version,
const char *  upload_data,
size_t *  upload_data_size,
void **  ptr 
)
static

Called whenever a new request is made.

This sets up HTTPRequest & HTTPResponse objects and then calls DispatchRequest.

int ola::http::IteratePost ( void *  request_cls,
enum MHD_ValueKind  kind,
const char *  key,
const char *  filename,
const char *  content_type,
const char *  transfer_encoding,
const char *  data,
uint64_t  off,
size_t  size 
)

Called by MHD_create_post_processor to iterate over the post form data.

Parameters
request_clsa pointer to a HTTPRequest object
kindthe source of the key-value pair
keythe header name
filenamethe name of the uploaded file or NULL if unknown
content_typethe MIME type of the data or NULL if unknown
transfer_encodingthe encoding of the data or NULL if unknown
datathe header value
offthe offset of the data
sizethe number of bytes available
void ola::http::RequestCompleted ( void *  ,
struct MHD_Connection *  ,
void **  request_cls,
enum  MHD_RequestTerminationCode 
)

Called when a request completes.

This deletes the associated HTTPRequest object.