This header defines the WebService messaging protocol. More...
#include <ssrc/wispers/protocol.h>#include <ssrc/wispers/fcgi/parameter_map.h>#include <ssrc/wispers/session/protocol.h>#include <ssrc/wispers/utility/StringTo.h>#include <ssrc/wispers/utility/AppendToContainer.h>#include <boost/preprocessor/stringize.hpp>

Go to the source code of this file.
Classes | |
| struct | protocol::MessageWebService< _id > |
| struct | ws::WebServiceCall |
| struct | ws::WebServiceProtocol |
| struct | ws::WebServiceProtocol::MessageCallBase< type > |
| class | ws::WebServiceProtocol::MessageResponse |
| struct | ws::WebServiceProtocol::MessageDeliverEvent |
| struct | ws::WebServiceProtocol::MessageDeliverEvents |
| struct | ws::WebServiceCallContextOneWay |
| struct | ws::WebServiceCallContextTwoWay |
Namespaces | |
| namespace | protocol |
The protocol namespace contains classes that define the framework for implementing and accessing WSPR service protocols. | |
| namespace | ws |
The ws namespace contains the class framework for building WSPR services that handle HTTP requests. | |
Defines | |
| #define | WSPR_WS_TYPE(service_base_str) "wspr.ws." service_base_str |
| Requires string literal argument. | |
| #define | __WS_DEFINE_CALL_PARAM(r, data, arg) BOOST_PP_TUPLE_ELEM(2, 0, arg) BOOST_PP_TUPLE_ELEM(2, 1, arg); |
| #define | __WS_INIT_CALL_PARAM(r, data, i, arg) BOOST_PP_COMMA_IF(i) BOOST_PP_TUPLE_ELEM(2, 1, arg)(call . get_parameter<BOOST_PP_TUPLE_ELEM(2, 0, arg)>(BOOST_PP_STRINGIZE(BOOST_PP_TUPLE_ELEM(2, 1, arg)))) |
| #define | __WS_CALL_PARAM(name, param_sequence) |
| #define | WS_CALL_PARAM(name, param_sequence) |
Functions | |
| template<> | |
| std::string | protocol::service_type< WebService > () |
| std::string | protocol::service_type_ws () |
| Properties & | ws::set_web_event_header (Properties &properties, const string &protocol, const string &call) |
| Properties & | ws::set_web_event_header (Properties &properties, const string &protocol, const string &call, const gsid_type gsid) |
| properties_unique_ptr | ws::web_event (const string &protocol, const string &call) |
| properties_unique_ptr | ws::web_event (const string &protocol, const string &call, const gsid_type gsid) |
| Properties & | ws::web_event_indirect (Properties &properties, const string &protocol, const string &call) |
| Properties & | ws::web_event_indirect (Properties &properties, const string &protocol, const string &call, const gsid_type gsid) |
| Properties & | ws::web_event_direct (Properties &properties, const string &protocol, const string &call) |
| Properties & | ws::web_event_direct (Properties &properties, const string &protocol, const string &call, const gsid_type gsid) |
| template<typename ws_type , typename param_type > | |
| void | ws::ws_call (ws_type *impl, void(ws_type::*call_handler)(const WebServiceCall &, const param_type &, const MessageInfo &), const WebServiceCall &call, const MessageInfo &msginfo) |
Detailed Description
This header defines the WebService messaging protocol.
Definition in file ws/protocol.h.
Define Documentation
| #define __WS_CALL_PARAM | ( | name, | |
| param_sequence | |||
| ) |
BOOST_PP_SEQ_FOR_EACH(__WS_DEFINE_CALL_PARAM, _, param_sequence) \ name (const NS_SSRC_WSPR_WS::WebServiceCall & call) SSRC_DECL_THROW(std::bad_cast) : \ BOOST_PP_SEQ_FOR_EACH_I(__WS_INIT_CALL_PARAM, call, param_sequence) \ { } \
Definition at line 233 of file ws/protocol.h.
| #define __WS_DEFINE_CALL_PARAM | ( | r, | |
| data, | |||
| arg | |||
| ) | BOOST_PP_TUPLE_ELEM(2, 0, arg) BOOST_PP_TUPLE_ELEM(2, 1, arg); |
Definition at line 226 of file ws/protocol.h.
| #define __WS_INIT_CALL_PARAM | ( | r, | |
| data, | |||
| i, | |||
| arg | |||
| ) | BOOST_PP_COMMA_IF(i) BOOST_PP_TUPLE_ELEM(2, 1, arg)(call . get_parameter<BOOST_PP_TUPLE_ELEM(2, 0, arg)>(BOOST_PP_STRINGIZE(BOOST_PP_TUPLE_ELEM(2, 1, arg)))) |
Definition at line 229 of file ws/protocol.h.
| #define WS_CALL_PARAM | ( | name, | |
| param_sequence | |||
| ) |
struct name { \
__WS_CALL_PARAM(name, param_sequence) \
}
Definition at line 239 of file ws/protocol.h.
| #define WSPR_WS_TYPE | ( | service_base_str | ) | "wspr.ws." service_base_str |
Requires string literal argument.
Definition at line 56 of file ws/protocol.h.
Referenced by ws::WebServiceProtocol::event_queue_ws_group(), ws::WebServiceProtocol::event_queue_ws_type(), ws_lua::Service::Service(), and ws::WebServiceRunner::WebServiceRunner().