Move asio interfaces away from deprecated names
The intent of this commit is to allow building asio based event loops in
applications with BOOST_ASIO_NO_DEPRECATED flag set. This change is
largely a sed replace of io_service with io_context.
This will allow us to move to the networking TS at such time that it is
mature. Details on depreated interfaces are available here for
reference:
https://www.boost.org/doc/libs/1_69_0/doc/html/boost_asio/net_ts.html
Change-Id: Ie3cc699effcf855a649dee5bfce2f6616109429b
Signed-off-by: Ed Tanous <ed.tanous@intel.com>
diff --git a/example/asio-example.cpp b/example/asio-example.cpp
index 29b605f..61916a5 100644
--- a/example/asio-example.cpp
+++ b/example/asio-example.cpp
@@ -174,7 +174,7 @@
int server()
{
// setup connection to dbus
- boost::asio::io_service io;
+ boost::asio::io_context io;
auto conn = std::make_shared<sdbusplus::asio::connection>(io);
// test object server
@@ -254,7 +254,7 @@
using message = sdbusplus::message::message;
// setup connection to dbus
- boost::asio::io_service io;
+ boost::asio::io_context io;
auto conn = std::make_shared<sdbusplus::asio::connection>(io);
int ready = 0;
diff --git a/sdbusplus/asio/connection.hpp b/sdbusplus/asio/connection.hpp
index 8fbd08a..bafa4c6 100644
--- a/sdbusplus/asio/connection.hpp
+++ b/sdbusplus/asio/connection.hpp
@@ -46,13 +46,13 @@
{
public:
// default to system bus
- connection(boost::asio::io_service& io) :
+ connection(boost::asio::io_context& io) :
sdbusplus::bus::bus(sdbusplus::bus::new_default()), io_(io), socket(io_)
{
socket.assign(get_fd());
read_wait();
}
- connection(boost::asio::io_service& io, sd_bus* bus) :
+ connection(boost::asio::io_context& io, sd_bus* bus) :
sdbusplus::bus::bus(bus), io_(io), socket(io_)
{
socket.assign(get_fd());
@@ -202,13 +202,13 @@
}
}
- boost::asio::io_service& get_io_service()
+ boost::asio::io_context& get_io_context()
{
return io_;
}
private:
- boost::asio::io_service& io_;
+ boost::asio::io_context& io_;
boost::asio::posix::stream_descriptor socket;
void read_wait()
@@ -228,7 +228,7 @@
}
void read_immediate()
{
- io_.post([&] {
+ boost::asio::post(io_, [&] {
if (process_discard())
{
read_immediate();
diff --git a/sdbusplus/asio/object_server.hpp b/sdbusplus/asio/object_server.hpp
index 5e367c8..5db004d 100644
--- a/sdbusplus/asio/object_server.hpp
+++ b/sdbusplus/asio/object_server.hpp
@@ -188,7 +188,7 @@
class coroutine_method_instance : public callback
{
public:
- coroutine_method_instance(boost::asio::io_service& io,
+ coroutine_method_instance(boost::asio::io_context& io,
CallbackType&& func) :
io_(io),
func_(std::move(func))
@@ -212,7 +212,7 @@
using InputTupleType =
typename utility::decay_tuple<CallbackSignature>::type;
using ResultType = boost::callable_traits::return_type_t<CallbackType>;
- boost::asio::io_service& io_;
+ boost::asio::io_context& io_;
CallbackType func_;
template <typename T>
std::enable_if_t<!std::is_void<T>::value, void>
@@ -526,7 +526,7 @@
{
callbacksMethod_[name] =
std::make_unique<coroutine_method_instance<CallbackType>>(
- conn_->get_io_service(), std::move(handler));
+ conn_->get_io_context(), std::move(handler));
}
else
{
diff --git a/sdbusplus/asio/sd_event.hpp b/sdbusplus/asio/sd_event.hpp
index b4a2ae3..747c240 100644
--- a/sdbusplus/asio/sd_event.hpp
+++ b/sdbusplus/asio/sd_event.hpp
@@ -24,13 +24,13 @@
namespace asio
{
-/* A simple class to integrate the sd_event_loop into the boost::asio io_service
+/* A simple class to integrate the sd_event_loop into the boost::asio io_context
* in case a boost::asio user needs sd_events
*/
class sd_event_wrapper
{
public:
- sd_event_wrapper(boost::asio::io_service& io) :
+ sd_event_wrapper(boost::asio::io_context& io) :
evt(nullptr), descriptor(io), io(io)
{
sd_event_default(&evt);
@@ -40,7 +40,7 @@
async_run();
}
}
- sd_event_wrapper(sd_event* evt, boost::asio::io_service& io) :
+ sd_event_wrapper(sd_event* evt, boost::asio::io_context& io) :
evt(evt), descriptor(io), io(io)
{
if (evt)
@@ -117,7 +117,7 @@
}
sd_event* evt;
boost::asio::posix::stream_descriptor descriptor;
- boost::asio::io_service& io;
+ boost::asio::io_context& io;
};
} // namespace asio