C++ Actor Framework 1.0.0
|
Default datagram servant implementation. More...
#include <datagram_servant_impl.hpp>
Public Types | |
using | id_type = int64_t |
Public Types inherited from caf::io::broker_servant< Base, Handle, SysMsgType > | |
using | handle_type = Handle |
Public Member Functions | |
datagram_servant_impl (default_multiplexer &mx, native_socket sockfd, id_type id) | |
bool | new_endpoint (network::receive_buffer &buf) override |
void | ack_writes (bool enable) override |
Enables or disables write notifications. | |
byte_buffer & | wr_buf (datagram_handle hdl) override |
Returns a new output buffer. | |
void | enqueue_datagram (datagram_handle hdl, byte_buffer buf) override |
Enqueue a buffer to be sent as a datagram. | |
network::receive_buffer & | rd_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. | |
std::string | addr (datagram_handle hdl) 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_handle > | hdls () 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. | |
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 (scheduler *, datagram_handle hdl, network::receive_buffer &buf) override |
void | datagram_sent (scheduler *, datagram_handle hdl, size_t, byte_buffer buffer) override |
Public Member Functions inherited from caf::io::broker_servant< Base, Handle, SysMsgType > | |
broker_servant (handle_type x) | |
handle_type | hdl () const |
void | halt () |
void | trigger () |
void | trigger (size_t num) |
std::optional< size_t > | activity_tokens () const |
Additional Inherited Members | |
Protected Member Functions inherited from caf::io::datagram_servant | |
message | detach_message () override |
Protected Member Functions inherited from caf::io::broker_servant< Base, Handle, SysMsgType > | |
void | detach_from (abstract_broker *ptr) override |
void | invoke_mailbox_element_impl (scheduler *ctx, mailbox_element &x) |
bool | invoke_mailbox_element (scheduler *ctx) |
SysMsgType & | msg () |
Protected Attributes inherited from caf::io::broker_servant< Base, Handle, SysMsgType > | |
handle_type | hdl_ |
mailbox_element | value_ |
std::optional< size_t > | activity_tokens_ |
Default datagram servant implementation.
|
overridevirtual |
Enables or disables write notifications.
Implements caf::io::datagram_servant.
|
overridevirtual |
Adds a new remote endpoint identified by the ip_endpoint
to the related manager.
Implements caf::io::datagram_servant.
|
overridevirtual |
Implements caf::io::datagram_servant.
|
overridevirtual |
Enqueue a buffer to be sent as a datagram.
Implements caf::io::datagram_servant.
|
overridevirtual |
Flushes the output buffer, i.e., sends the content of the buffer via the network.
Implements caf::io::datagram_servant.
|
overridevirtual |
Returns all the handles associated with this servant.
Implements caf::io::datagram_servant.
|
overridevirtual |
Implements caf::io::datagram_servant.
|
overridevirtual |
Returns the local port of associated socket.
Implements caf::io::datagram_servant.
|
overridevirtual |
Returns the current input buffer.
Implements caf::io::datagram_servant.
|
overridevirtual |
Implements caf::io::datagram_servant.
|
overridevirtual |
Returns a new output buffer.
Implements caf::io::datagram_servant.