Fawkes API  Fawkes Development Version
fawkes::WebRequestProcessor Class Referenceabstract

Abstract web request processor. More...

#include <>>

Inheritance diagram for fawkes::WebRequestProcessor:

Public Member Functions

 WebRequestProcessor (bool handles_session_data=false)
 Constructor. More...
 
virtual ~WebRequestProcessor ()
 Virtual empty destructor. More...
 
virtual WebReplyprocess_request (const char *url, const char *method, const char *version, const char *upload_data, size_t *upload_data_size, void **session_data)=0
 Process a request. More...
 
bool handles_session_data () const
 Check if processor handles session data by itself. More...
 

Detailed Description

Abstract web request processor.

Interface used to define web request processor that can be registered to the WebRequestDispatcher.

Author
Tim Niemueller

Definition at line 33 of file request_processor.h.

Constructor & Destructor Documentation

fawkes::WebRequestProcessor::WebRequestProcessor ( bool  handles_session_data = false)

Constructor.

Parameters
handles_session_dataset to true, if you handle the session_data field passed into process_request() by yourself. The method will then be called multiple times. On the first iteration, you must set *session_data to a non-NULL value and return NULL. Only on the second call you produce the real reply.

Definition at line 63 of file request_processor.cpp.

fawkes::WebRequestProcessor::~WebRequestProcessor ( )
virtual

Virtual empty destructor.

Definition at line 69 of file request_processor.cpp.

Member Function Documentation

bool fawkes::WebRequestProcessor::handles_session_data ( ) const

Check if processor handles session data by itself.

Read constructor information for detailed information.

Returns
true if the processor handles session data itself, false otherwise

Definition at line 79 of file request_processor.cpp.

WebReply * fawkes::WebRequestProcessor::process_request ( const char *  url,
const char *  method,
const char *  version,
const char *  upload_data,
size_t *  upload_data_size,
void **  session_data 
)
pure virtual

Process a request.

Parameters
urlURL, may contain escape sequences
methodHTTP method
versionHTTP version
upload_datauploaded data
upload_data_sizesize of upload_data parameter
session_datasession data pointer
Returns
a WebReply instance, more specifically either a DynamicWebReply or a StaticWebReply that is sent as reply, or NULL to cause a 404 (not found) error.

Implemented in ROSWebviewRequestProcessor, XmlRpcRequestProcessor, WebviewBlackBoardRequestProcessor, RRDWebRequestProcessor, WebviewStaticRequestProcessor, WebviewPluginsRequestProcessor, and WebviewStartPageRequestProcessor.


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