8 #ifndef DIAG_CLIENT_LIB_LIB_DOIP_CLIENT_DOIP_TRANSPORT_PROTOCOL_HANDLER_H_
9 #define DIAG_CLIENT_LIB_LIB_DOIP_CLIENT_DOIP_TRANSPORT_PROTOCOL_HANDLER_H_
12 #include <string_view>
18 namespace transport_protocol_handler {
63 void Start() override;
81 uds_transport::ConversionHandler &conversation, std::string_view tcp_ip_address,
82 std::uint16_t port_num) override;
95 uds_transport::ConversionHandler &conversation, std::string_view udp_ip_address,
96 std::uint16_t port_num) override;
Protocol handler class to manage the whole Doip protocol communication.
void Stop() override
Function to stop the protocol handler.
DoipTransportProtocolHandler(UdsTransportProtocolHandlerId handler_id, uds_transport::UdsTransportProtocolMgr const &transport_protocol_mgr)
Constructs an instance of DoipTransportProtocolHandler.
void Start() override
Function to start the protocol handler.
std::unique_ptr< uds_transport::Connection > CreateUdpConnection(uds_transport::ConversionHandler &conversation, std::string_view udp_ip_address, std::uint16_t port_num) override
Function to create a new Udp connection.
std::unique_ptr< uds_transport::Connection > CreateTcpConnection(uds_transport::ConversionHandler &conversation, std::string_view tcp_ip_address, std::uint16_t port_num) override
Function to create a new Tcp connection.
connection::ConnectionManager connection_mgr_
Store Doip Connection manager.
InitializationResult Initialize() override
Function to initialize the handler.
uds_transport::UdsTransportProtocolHandler::UdsTransportProtocolHandlerId UdsTransportProtocolHandlerId
Type alias for handler id.
~DoipTransportProtocolHandler() final
Destruct an instance of DoipTransportProtocolHandler.
std::uint8_t UdsTransportProtocolHandlerId
Type alias for handler id.
InitializationResult
Definitions of different initialization result.