28 #ifndef WEBSOCKETPP_MESSAGE_BUFFER_MESSAGE_HPP
29 #define WEBSOCKETPP_MESSAGE_BUFFER_MESSAGE_HPP
31 #include <websocketpp/common/memory.hpp>
32 #include <websocketpp/frame.hpp>
37 namespace message_buffer {
83 template <
template<
class>
class con_msg_manager>
86 typedef lib::shared_ptr<
message> ptr;
88 typedef con_msg_manager<
message> con_msg_man_type;
89 typedef typename con_msg_man_type::ptr con_msg_man_ptr;
90 typedef typename con_msg_man_type::weak_ptr con_msg_man_weak_ptr;
101 , m_compressed(
false) {}
113 , m_compressed(
false)
115 m_payload.reserve(size);
157 m_compressed = value;
238 std::string
const & get_extension_data()
const {
239 return m_extension_data;
276 m_payload.reserve(len);
277 char const * pl =
static_cast<
char const *>(payload);
278 m_payload.assign(pl, pl + len);
288 m_payload.append(payload);
299 m_payload.reserve(m_payload.size()+len);
300 m_payload.append(
static_cast<
char const *>(payload),len);
317 con_msg_man_ptr shared = m_manager.lock();
320 return shared->recycle(
this);
326 con_msg_man_weak_ptr m_manager;
327 std::string m_header;
328 std::string m_extension_data;
329 std::string m_payload;