24#if MSGPACK_RPC_HAS_UNIX_SOCKETS
36namespace msgpack_rpc::transport::unix_socket {
41class UnixSocketBackend final :
public IBackend {
50 UnixSocketBackend(
const std::shared_ptr<executors::IExecutor>& executor,
51 const config::MessageParserConfig& message_parser_config,
52 std::shared_ptr<logging::Logger> logger);
55 [[nodiscard]] std::string_view scheme() const noexcept override;
58 [[nodiscard]] std::shared_ptr<IAcceptorFactory> create_acceptor_factory()
62 [[nodiscard]] std::shared_ptr<IConnector> create_connector() override;
64 UnixSocketBackend(const UnixSocketBackend&) = delete;
65 UnixSocketBackend(UnixSocketBackend&&) = delete;
66 UnixSocketBackend& operator=(const UnixSocketBackend&) = delete;
67 UnixSocketBackend& operator=(UnixSocketBackend&&) = delete;
70 ~UnixSocketBackend() noexcept override;
78 [[nodiscard]] std::shared_ptr<executors::IExecutor> executor() const;
81 std::weak_ptr<executors::IExecutor> executor_;
84 config::MessageParserConfig message_parser_config_;
87 std::shared_ptr<logging::Logger> logger_;
Definitions of platform-specific macros.
Definition of IAcceptorFactory class.
Definition of IBackend class.
Definition of IConnector class.
Definition of IExecutor class.
Definition of Logger class.
Definition of MessageParserConfig class.