unilink  0.4.3
A simple C++ library for unified async communication
unilink::builder::UdpBuilder Class Reference

Modernized Builder for Udp. More...

#include <udp_builder.hpp>

Inheritance diagram for unilink::builder::UdpBuilder:
unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >

Public Member Functions

 UdpBuilder ()
 
 UdpBuilder (const UdpBuilder &)=delete
 
UdpBuilderoperator= (const UdpBuilder &)=delete
 
 UdpBuilder (UdpBuilder &&)=default
 
UdpBuilderoperator= (UdpBuilder &&)=default
 
std::unique_ptr< wrapper::Udpbuild () override
 Build and return the configured product. More...
 
UdpBuilderauto_manage (bool auto_manage=true) override
 Enable auto-manage functionality. More...
 
UdpBuilderon_data (std::function< void(const wrapper::MessageContext &)> handler) override
 Set data handler callback. More...
 
UdpBuilderon_connect (std::function< void(const wrapper::ConnectionContext &)> handler) override
 Set connection handler callback. More...
 
UdpBuilderon_disconnect (std::function< void(const wrapper::ConnectionContext &)> handler) override
 Set disconnection handler callback. More...
 
UdpBuilderon_error (std::function< void(const wrapper::ErrorContext &)> handler) override
 Set error handler callback. More...
 
UdpBuilderset_local_port (uint16_t port)
 Set local port to bind. More...
 
UdpBuilderset_remote (const std::string &address, uint16_t port)
 Set remote address and port. More...
 
UdpBuilderuse_independent_context (bool use_independent=true)
 Use independent IoContext. More...
 

Additional Inherited Members

Detailed Description

Modernized Builder for Udp.

Definition at line 37 of file udp_builder.hpp.

Constructor & Destructor Documentation

◆ UdpBuilder() [1/3]

unilink::builder::UdpBuilder::UdpBuilder ( )

Definition at line 26 of file udp_builder.cc.

◆ UdpBuilder() [2/3]

unilink::builder::UdpBuilder::UdpBuilder ( const UdpBuilder )
delete

◆ UdpBuilder() [3/3]

unilink::builder::UdpBuilder::UdpBuilder ( UdpBuilder &&  )
default

Member Function Documentation

◆ auto_manage()

UdpBuilder & unilink::builder::UdpBuilder::auto_manage ( bool  auto_manage = true)
overridevirtual

Enable auto-manage functionality.

Parameters
auto_manageWhether to automatically manage the wrapper lifecycle
Returns
Derived& Reference to this builder for method chaining

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 52 of file udp_builder.cc.

◆ build()

std::unique_ptr< wrapper::Udp > unilink::builder::UdpBuilder::build ( )
overridevirtual

Build and return the configured product.

Returns
std::unique_ptr<T> The configured wrapper instance

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 31 of file udp_builder.cc.

◆ on_connect()

UdpBuilder & unilink::builder::UdpBuilder::on_connect ( std::function< void(const wrapper::ConnectionContext &)>  handler)
overridevirtual

Set connection handler callback.

Parameters
handlerFunction to handle connection events with context
Returns
Derived& Reference to this builder for method chaining

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 62 of file udp_builder.cc.

◆ on_data()

UdpBuilder & unilink::builder::UdpBuilder::on_data ( std::function< void(const wrapper::MessageContext &)>  handler)
overridevirtual

Set data handler callback.

Parameters
handlerFunction to handle incoming data with context
Returns
Derived& Reference to this builder for method chaining

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 57 of file udp_builder.cc.

◆ on_disconnect()

UdpBuilder & unilink::builder::UdpBuilder::on_disconnect ( std::function< void(const wrapper::ConnectionContext &)>  handler)
overridevirtual

Set disconnection handler callback.

Parameters
handlerFunction to handle disconnection events with context
Returns
Derived& Reference to this builder for method chaining

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 67 of file udp_builder.cc.

◆ on_error()

UdpBuilder & unilink::builder::UdpBuilder::on_error ( std::function< void(const wrapper::ErrorContext &)>  handler)
overridevirtual

Set error handler callback.

Parameters
handlerFunction to handle error events with context
Returns
Derived& Reference to this builder for method chaining

Implements unilink::builder::BuilderInterface< wrapper::Udp, UdpBuilder >.

Definition at line 72 of file udp_builder.cc.

◆ operator=() [1/2]

UdpBuilder& unilink::builder::UdpBuilder::operator= ( const UdpBuilder )
delete

◆ operator=() [2/2]

UdpBuilder& unilink::builder::UdpBuilder::operator= ( UdpBuilder &&  )
default

◆ set_local_port()

UdpBuilder & unilink::builder::UdpBuilder::set_local_port ( uint16_t  port)

Set local port to bind.

Definition at line 77 of file udp_builder.cc.

◆ set_remote()

UdpBuilder & unilink::builder::UdpBuilder::set_remote ( const std::string &  address,
uint16_t  port 
)

Set remote address and port.

Definition at line 82 of file udp_builder.cc.

◆ use_independent_context()

UdpBuilder & unilink::builder::UdpBuilder::use_independent_context ( bool  use_independent = true)

Use independent IoContext.

Definition at line 88 of file udp_builder.cc.


The documentation for this class was generated from the following files: