Fawkes API  Fawkes Development Version
fawkes::WebPageReply Class Reference

#include <>>

Inheritance diagram for fawkes::WebPageReply:

Public Member Functions

 WebPageReply (std::string title, std::string page="")
 Constructor. More...
 
virtual const std::string & body ()
 Get body. More...
 
virtual std::string::size_type body_length ()
 Get length of body. More...
 
virtual void pack ()
 Pack the data. More...
 
virtual void pack (std::string active_baseurl, WebPageHeaderGenerator *headergen, WebPageFooterGenerator *footergen)
 Pack web page reply. More...
 
virtual void set_html_header (std::string h)
 Set HTML header text. More...
 
void set_navbar_enabled (bool enabled)
 Enable or disable the Fawkes Navigationbar (default enabled) More...
 
bool get_navbar_enabled ()
 Is the Fawkes Navigation bar enabled? More...
 
void set_footer_enabled (bool enabled)
 Enable or disable the Fawkes Webview footer (default enabled) More...
 
bool get_footer_enabled ()
 Is the Fawkes Webview footer enabled? More...
 
- Public Member Functions inherited from fawkes::StaticWebReply
 StaticWebReply (Code code, std::string body="")
 Constructor. More...
 
void append_body (const char *format,...)
 Append to body. More...
 
void append_body (const std::string &s)
 Append string to body. More...
 
StaticWebReplyoperator+= (std::string text)
 Append simple text line. More...
 
- Public Member Functions inherited from fawkes::WebReply
 WebReply (Code code)
 Constructor. More...
 
virtual ~WebReply ()
 Destructor. More...
 
Code code () const
 Get response code. More...
 
void set_code (Code code)
 Set response code. More...
 
void add_header (const std::string &header, const std::string &content)
 Add a HTTP header. More...
 
void add_header (const std::string &header_string)
 Add a HTTP header. More...
 
const HeaderMapheaders () const
 get headers. More...
 
void set_caching (bool caching)
 Enable or disable caching for this specific reply. More...
 
void set_request (WebRequest *request)
 Set associated request. More...
 
WebRequestget_request () const
 Get associated request. More...
 
void pack_caching ()
 Called just before the reply is sent. More...
 

Protected Member Functions

 WebPageReply (Code code)
 Base constructor. More...
 

Protected Attributes

std::string _title
 Title of the page. More...
 
- Protected Attributes inherited from fawkes::StaticWebReply
std::string _body
 Body of the reply. More...
 

Additional Inherited Members

- Public Types inherited from fawkes::WebReply
enum  Code {
  HTTP_CONTINUE = 100, HTTP_SWITCHING_PROTOCOLS = 101, HTTP_PROCESSING = 102, HTTP_OK = 200,
  HTTP_CREATED = 201, HTTP_ACCEPTED = 202, HTTP_NON_AUTHORITATIVE_INFORMATION = 203, HTTP_NO_CONTENT = 204,
  HTTP_RESET_CONTENT = 205, HTTP_PARTIAL_CONTENT = 206, HTTP_MULTI_STATUS = 207, HTTP_MULTIPLE_CHOICES = 300,
  HTTP_MOVED_PERMANENTLY = 301, HTTP_FOUND = 302, HTTP_SEE_OTHER = 303, HTTP_NOT_MODIFIED = 304,
  HTTP_USE_PROXY = 305, HTTP_SWITCH_PROXY = 306, HTTP_TEMPORARY_REDIRECT = 307, HTTP_BAD_REQUEST = 400,
  HTTP_UNAUTHORIZED = 401, HTTP_PAYMENT_REQUIRED = 402, HTTP_FORBIDDEN = 403, HTTP_NOT_FOUND = 404,
  HTTP_METHOD_NOT_ALLOWED = 405, HTTP_METHOD_NOT_ACCEPTABLE = 406, HTTP_PROXY_AUTHENTICATION_REQUIRED = 407, HTTP_REQUEST_TIMEOUT = 408,
  HTTP_CONFLICT = 409, HTTP_GONE = 410, HTTP_LENGTH_REQUIRED = 411, HTTP_PRECONDITION_FAILED = 412,
  HTTP_REQUEST_ENTITY_TOO_LARGE = 413, HTTP_REQUEST_URI_TOO_LONG = 414, HTTP_UNSUPPORTED_MEDIA_TYPE = 415, HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
  HTTP_EXPECTATION_FAILED = 417, HTTP_UNPROCESSABLE_ENTITY = 422, HTTP_LOCKED = 423, HTTP_FAILED_DEPENDENCY = 424,
  HTTP_UNORDERED_COLLECTION = 425, HTTP_UPGRADE_REQUIRED = 426, HTTP_RETRY_WITH = 449, HTTP_INTERNAL_SERVER_ERROR = 500,
  HTTP_NOT_IMPLEMENTED = 501, HTTP_BAD_GATEWAY = 502, HTTP_SERVICE_UNAVAILABLE = 503, HTTP_GATEWAY_TIMEOUT = 504,
  HTTP_HTTP_VERSION_NOT_SUPPORTED = 505, HTTP_VARIANT_ALSO_NEGOTIATES = 506, HTTP_INSUFFICIENT_STORAGE = 507, HTTP_BANDWIDTH_LIMIT_EXCEEDED = 509,
  HTTP_NOT_EXTENDED = 510
}
 HTTP response code. More...
 
typedef std::map< std::string, std::string > HeaderMap
 Map of headers. More...
 
- Static Public Member Functions inherited from fawkes::WebReply
static void set_caching_default (bool caching)
 Enable or disable caching default for replies. More...
 

Detailed Description

Basic page reply. This reply adds header and footer as appropriate to form a HTML document with logo and navigation.

Author
Tim Niemueller

Definition at line 37 of file page_reply.h.

Constructor & Destructor Documentation

◆ WebPageReply() [1/2]

fawkes::WebPageReply::WebPageReply ( std::string  title,
std::string  body = "" 
)

Constructor.

Parameters
titletitle of the page
bodyOptional initial body of the page

Definition at line 63 of file page_reply.cpp.

◆ WebPageReply() [2/2]

fawkes::WebPageReply::WebPageReply ( Code  code)
protected

Base constructor.

Constructor that does not set a title or anything. Use for sub-classes.

Parameters
codeHTTP code for this reply

Definition at line 77 of file page_reply.cpp.

Member Function Documentation

◆ body()

const std::string & fawkes::WebPageReply::body ( )
virtual

Get body.

Returns
reference to body.

Reimplemented from fawkes::StaticWebReply.

Definition at line 135 of file page_reply.cpp.

◆ body_length()

std::string::size_type fawkes::WebPageReply::body_length ( )
virtual

Get length of body.

Returns
body length

Reimplemented from fawkes::StaticWebReply.

Definition at line 129 of file page_reply.cpp.

◆ get_footer_enabled()

bool fawkes::WebPageReply::get_footer_enabled ( )

Is the Fawkes Webview footer enabled?

Returns
enabled

Definition at line 172 of file page_reply.cpp.

◆ get_navbar_enabled()

bool fawkes::WebPageReply::get_navbar_enabled ( )

Is the Fawkes Navigation bar enabled?

Returns
enabled

Definition at line 154 of file page_reply.cpp.

◆ pack() [1/2]

virtual void fawkes::WebPageReply::pack ( )
inlinevirtual

Pack the data.

This method is called just before the reply is sent. You can implement this method if you need to compose your reply before body() and body_length() provide valid output.

Reimplemented from fawkes::StaticWebReply.

Definition at line 45 of file page_reply.h.

◆ pack() [2/2]

void fawkes::WebPageReply::pack ( std::string  active_baseurl,
WebPageHeaderGenerator headergen,
WebPageFooterGenerator footergen 
)
virtual

Pack web page reply.

This method creates the final page by calling the header and footer generators if supplied (otherwise a standard header is chosen) and the body.

Parameters
active_baseurlthe active navigation URL, can be used for instance to high-light the current section in the navigation.
headergenheader generator
footergenfooter generator

Definition at line 105 of file page_reply.cpp.

References _title, and fawkes::HostInfo::short_name().

◆ set_footer_enabled()

void fawkes::WebPageReply::set_footer_enabled ( bool  enabled)

Enable or disable the Fawkes Webview footer (default enabled)

Parameters
enabledenabled

Definition at line 163 of file page_reply.cpp.

◆ set_html_header()

void fawkes::WebPageReply::set_html_header ( std::string  h)
virtual

Set HTML header text.

The given text is placed in the head section of the HTML page. You can use it for example to add custom stylesheets or JavaScript.

Parameters
hheader to set

Definition at line 91 of file page_reply.cpp.

◆ set_navbar_enabled()

void fawkes::WebPageReply::set_navbar_enabled ( bool  enabled)

Enable or disable the Fawkes Navigationbar (default enabled)

Parameters
enabledenabled

Definition at line 145 of file page_reply.cpp.

Member Data Documentation

◆ _title

std::string fawkes::WebPageReply::_title
protected

Title of the page.

Definition at line 65 of file page_reply.h.

Referenced by pack().


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