From 2ad049055c621c587d03f07dd9f704ee7c2157b7 Mon Sep 17 00:00:00 2001 From: Peter Thorson Date: Sun, 6 Jan 2013 09:59:55 -0600 Subject: [PATCH] updates echo_server to use new interrupt API --- examples/echo_server/echo_server.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/examples/echo_server/echo_server.cpp b/examples/echo_server/echo_server.cpp index d630fd5879..697d85fd1c 100644 --- a/examples/echo_server/echo_server.cpp +++ b/examples/echo_server/echo_server.cpp @@ -69,18 +69,26 @@ public: test_handler(server& s): m_server(s) {} void on_open(websocketpp::connection_hdl hdl) { - std::cout << "on_open called with hdl: " << &hdl << std::endl; + std::cout << "on_open called with hdl: " << hdl.lock().get() << std::endl; m_server.interrupt(hdl); } private: server& m_server; }; -void on_close(server* s, websocketpp::connection_hdl hdl) { - std::cout << "on_close called with hdl: " << &hdl << std::endl; +void on_open(server* s, websocketpp::connection_hdl hdl) { + std::cout << "on_open called with hdl: " << hdl.lock().get() << std::endl; s->interrupt(hdl); } +void on_interrupt(server* s, websocketpp::connection_hdl hdl) { + std::cout << "on_interrupt called with hdl: " << hdl.lock().get() << std::endl; +} + +using websocketpp::lib::placeholders::_1; +using websocketpp::lib::bind; + + int main() { server::handler::ptr h(new handler()); @@ -91,7 +99,8 @@ int main() { test_handler t(echo_server); //echo_server.set_open_handler(websocketpp::lib::bind(&test_handler::on_open,t,websocketpp::lib::placeholders::_1)); - echo_server.set_open_handler(websocketpp::lib::bind(&on_close,&echo_server,websocketpp::lib::placeholders::_1)); + echo_server.set_open_handler(bind(&on_open,&echo_server,::_1)); + echo_server.set_interrupt_handler(bind(&on_interrupt,&echo_server,::_1)); // Listen echo_server.listen(9002);