JSON-RPC 2.0
JSON-RPC 2.0 Modern C++ Library
|
#include <pipe_transport.hpp>
Public Member Functions | |
PipeTransport (asio::any_io_executor executor, std::string socket_path, bool is_server=false, std::shared_ptr< spdlog::logger > logger=nullptr) | |
~PipeTransport () override | |
PipeTransport (const PipeTransport &)=delete | |
auto | operator= (const PipeTransport &) -> PipeTransport &=delete |
PipeTransport (PipeTransport &&)=delete | |
auto | operator= (PipeTransport &&) -> PipeTransport &=delete |
auto | Start () -> asio::awaitable< std::expected< void, error::RpcError > > override |
auto | Close () -> asio::awaitable< std::expected< void, error::RpcError > > override |
void | CloseNow () override |
auto | SendMessage (std::string message) -> asio::awaitable< std::expected< void, error::RpcError > > override |
auto | Flush () -> asio::awaitable< std::expected< void, error::RpcError > > |
auto | ReceiveMessage () -> asio::awaitable< std::expected< std::string, error::RpcError > > override |
![]() | |
Transport (asio::any_io_executor executor, std::shared_ptr< spdlog::logger > logger=nullptr) | |
Transport (const Transport &)=delete | |
Transport (Transport &&)=delete | |
auto | operator= (const Transport &) -> Transport &=delete |
auto | operator= (Transport &&) -> Transport &=delete |
virtual | ~Transport ()=default |
auto | GetExecutor () const -> asio::any_io_executor |
auto | GetStrand () -> asio::strand< asio::any_io_executor > & |
Protected Member Functions | |
auto | GetSocket () -> asio::local::stream_protocol::socket & |
auto | RemoveExistingSocketFile () -> std::expected< void, error::RpcError > |
auto | Connect () -> asio::awaitable< std::expected< void, error::RpcError > > |
auto | BindAndListen () -> asio::awaitable< std::expected< void, error::RpcError > > |
![]() | |
auto | Logger () -> std::shared_ptr< spdlog::logger > |
Definition at line 17 of file pipe_transport.hpp.
|
explicit |
Definition at line 19 of file pipe_transport.cpp.
|
override |
Definition at line 29 of file pipe_transport.cpp.
References CloseNow(), and jsonrpc::transport::Transport::Logger().
|
delete |
|
delete |
|
protected |
Definition at line 434 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 86 of file pipe_transport.cpp.
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 142 of file pipe_transport.cpp.
References jsonrpc::transport::Transport::Logger().
Referenced by ~PipeTransport().
|
protected |
Definition at line 388 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().
auto jsonrpc::transport::PipeTransport::Flush | ( | ) | -> asio::awaitable<std::expected<void, error::RpcError>> |
Definition at line 308 of file pipe_transport.cpp.
|
protected |
Definition at line 207 of file pipe_transport.cpp.
|
delete |
|
delete |
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 322 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().
Referenced by jsonrpc::transport::FramedPipeTransport::ReceiveMessage().
|
protected |
Definition at line 211 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 235 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().
Referenced by jsonrpc::transport::FramedPipeTransport::SendMessage().
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 40 of file pipe_transport.cpp.
References jsonrpc::error::RpcError::UnexpectedFromCode().