libcaf  0.17.1
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
caf::io::network::datagram_servant_impl Class Reference

Default datagram servant implementation. More...

#include <datagram_servant_impl.hpp>

Inheritance diagram for caf::io::network::datagram_servant_impl:
caf::io::datagram_servant caf::io::broker_servant< Base, Handle, SysMsgType >

Public Member Functions

 datagram_servant_impl (default_multiplexer &mx, native_socket sockfd, int64_t id)
 
bool new_endpoint (network::receive_buffer &buf) override
 
void ack_writes (bool enable) override
 Enables or disables write notifications.
 
std::vector< char > & wr_buf (datagram_handle hdl) override
 Returns a new output buffer.
 
void enqueue_datagram (datagram_handle hdl, std::vector< char > buf) override
 Enqueue a buffer to be sent as a datagram.
 
network::receive_bufferrd_buf () override
 Returns the current input buffer.
 
void graceful_shutdown () override
 
void flush () override
 Flushes the output buffer, i.e., sends the content of the buffer via the network. More...
 
std::string addr () const override
 
uint16_t port (datagram_handle hdl) const override
 
uint16_t local_port () const override
 Returns the local port of associated socket.
 
std::vector< datagram_handlehdls () const override
 Returns all the handles associated with this servant.
 
void add_endpoint (const ip_endpoint &ep, datagram_handle hdl) override
 Adds a new remote endpoint identified by the ip_endpoint to the related manager. More...
 
void remove_endpoint (datagram_handle hdl) override
 
void launch () override
 
void add_to_loop () override
 
void remove_from_loop () override
 
void detach_handles () override
 
- Public Member Functions inherited from caf::io::datagram_servant
 datagram_servant (datagram_handle hdl)
 
bool consume (execution_unit *, datagram_handle hdl, network::receive_buffer &buf) override
 
void datagram_sent (execution_unit *, datagram_handle hdl, size_t, std::vector< char > buffer) override
 
- Public Member Functions inherited from caf::io::broker_servant< Base, Handle, SysMsgType >
 broker_servant (handle_type x)
 

Additional Inherited Members

- Public Types inherited from caf::io::broker_servant< Base, Handle, SysMsgType >
using handle_type = Handle
 
- Public Attributes inherited from caf::io::broker_servant< Base, Handle, SysMsgType >
mailbox_element_vals< SysMsgType > value_
 
optional< size_t > activity_tokens_
 
- Protected Member Functions inherited from caf::io::datagram_servant
message detach_message () override
 

Detailed Description

Default datagram servant implementation.

Member Function Documentation

void caf::io::network::datagram_servant_impl::add_endpoint ( const ip_endpoint ep,
datagram_handle  hdl 
)
overridevirtual

Adds a new remote endpoint identified by the ip_endpoint to the related manager.

Implements caf::io::datagram_servant.

void caf::io::network::datagram_servant_impl::flush ( )
overridevirtual

Flushes the output buffer, i.e., sends the content of the buffer via the network.

Implements caf::io::datagram_servant.


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