CAF 0.17.6
Loading...
Searching...
No Matches
caf::io::network::doorman_impl Class Reference

Default doorman implementation. More...

#include <doorman_impl.hpp>

Inheritance diagram for caf::io::network::doorman_impl:
caf::io::doorman caf::io::broker_servant< network::acceptor_manager, accept_handle, new_connection_msg > caf::io::network::acceptor_manager caf::io::network::manager caf::ref_counted caf::memory_managed

Public Member Functions

 doorman_impl (default_multiplexer &mx, native_socket sockfd)
bool new_connection () override
 Called by the underlying I/O device to indicate that a new connection is awaiting acceptance.
void graceful_shutdown () override
void launch () override
 Starts listening on the selected port.
std::string addr () const override
uint16_t port () const override
 Get the port of the underlying I/O device.
void add_to_loop () override
void remove_from_loop () override
Public Member Functions inherited from caf::io::doorman
 doorman (accept_handle acc_hdl)
bool new_connection (execution_unit *ctx, connection_handle x)
Public Member Functions inherited from caf::io::broker_servant< network::acceptor_manager, accept_handle, new_connection_msg >
 broker_servant (handle_type x)
handle_type hdl () const
void halt ()
void trigger ()
void trigger (size_t num)
optional< size_t > activity_tokens () const
Public Member Functions inherited from caf::io::network::manager
void set_parent (abstract_broker *ptr)
 Sets the parent for this manager.
abstract_brokerparent ()
 Returns the parent broker of this manager.
bool detached () const
 Returns true if this manager has a parent, false otherwise.
Public Member Functions inherited from caf::ref_counted
 ref_counted (const ref_counted &)
ref_counted & operator= (const ref_counted &)
void ref () const noexcept
 Increases reference count by one.
void deref () const noexcept
 Decreases reference count by one and calls request_deletion when it drops to zero.
bool unique () const noexcept
 Queries whether there is exactly one reference.
size_t get_reference_count () const noexcept

Protected Attributes

acceptor_impl< policy::tcpacceptor_
Protected Attributes inherited from caf::io::broker_servant< network::acceptor_manager, accept_handle, new_connection_msg >
handle_type hdl_
mailbox_element_vals< new_connection_msgvalue_
optional< size_t > activity_tokens_
Protected Attributes inherited from caf::ref_counted
std::atomic< size_t > rc_

Additional Inherited Members

Public Types inherited from caf::io::broker_servant< network::acceptor_manager, accept_handle, new_connection_msg >
using handle_type
Protected Member Functions inherited from caf::io::doorman
message detach_message () override
Protected Member Functions inherited from caf::io::broker_servant< network::acceptor_manager, accept_handle, new_connection_msg >
void detach_from (abstract_broker *ptr) override
void invoke_mailbox_element_impl (execution_unit *ctx, mailbox_element &x)
bool invoke_mailbox_element (execution_unit *ctx)
new_connection_msgmsg ()

Detailed Description

Default doorman implementation.

Member Function Documentation

◆ launch()

void caf::io::network::doorman_impl::launch ( )
overridevirtual

Starts listening on the selected port.

Implements caf::io::doorman.

◆ new_connection()

bool caf::io::network::doorman_impl::new_connection ( )
overridevirtual

Called by the underlying I/O device to indicate that a new connection is awaiting acceptance.

Returns
true if the manager accepts further connections, otherwise false.

Implements caf::io::network::acceptor_manager.

◆ port()

uint16_t caf::io::network::doorman_impl::port ( ) const
overridevirtual

Get the port of the underlying I/O device.

Implements caf::io::network::acceptor_manager.


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