|
JSON-RPC 2.0
JSON-RPC 2.0 Modern C++ Library
|
#include <framed_pipe_transport.hpp>
Public Member Functions | |
| FramedPipeTransport (asio::any_io_executor executor, const std::string &socket_path, bool is_server, std::shared_ptr< spdlog::logger > logger=nullptr) | |
| auto | SendMessage (std::string message) -> asio::awaitable< std::expected< void, error::RpcError > > override |
| auto | ReceiveMessage () -> asio::awaitable< std::expected< std::string, error::RpcError > > override |
Public Member Functions inherited from jsonrpc::transport::PipeTransport | |
| 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 |
Public Member Functions inherited from jsonrpc::transport::Transport | |
| 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 > & |
Additional Inherited Members | |
Protected Member Functions inherited from jsonrpc::transport::PipeTransport | |
| 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 > > |
Protected Member Functions inherited from jsonrpc::transport::Transport | |
| auto | Logger () -> std::shared_ptr< spdlog::logger > |
Definition at line 12 of file framed_pipe_transport.hpp.
| jsonrpc::transport::FramedPipeTransport::FramedPipeTransport | ( | asio::any_io_executor | executor, |
| const std::string & | socket_path, | ||
| bool | is_server, | ||
| std::shared_ptr< spdlog::logger > | logger = nullptr ) |
Definition at line 10 of file framed_pipe_transport.cpp.
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 22 of file framed_pipe_transport.cpp.
References jsonrpc::transport::PipeTransport::ReceiveMessage(), and jsonrpc::error::RpcError::UnexpectedFromCode().
|
overridevirtual |
Implements jsonrpc::transport::Transport.
Definition at line 16 of file framed_pipe_transport.cpp.
References jsonrpc::transport::MessageFramer::Frame(), and jsonrpc::transport::PipeTransport::SendMessage().