tree 6dfcf8b81362f16b4ba2bef748fc3d22b66cca5a
parent 841d8d35173741654a771bec26569313b85af93b
author Vernon Mauery <vernon.mauery@linux.intel.com> 1538518220 -0700
committer William A. Kennington III <wak@google.com> 1540413197 +0000

Add sdbusplus::asio coroutine method handling

Adding the server-side of the coroutine path allows yielding
asynchronous method handling via coroutines. This means that a method
handler can call a yielding dbus call (or other asio-based asynchronous
call) without blocking the rest of the process.

The call path might look something like this:

service.thing/object/path/interface.my-method()
    - do something
    - yield_method_call(other.service, /other/path,
                 other.interface, other-method)
    <yields to other coroutine>

execute other code in another context

    <returns some time later with dbus call's response>
    - use response from other method
    <- return my-method response

This also changes the asio-example, pulling it apart into a
client/server model so it is more clear about how to use the yielding
async method handling and yielding async method calls.

Change-Id: I23ccf7a9a8dff787be78929959c1f018280a0392
Signed-off-by: Vernon Mauery <vernon.mauery@linux.intel.com>
