SNode.C
|
#include <SocketAcceptor.h>
Public Member Functions | |
SocketAcceptor (const std::shared_ptr< core::socket::stream::SocketContextFactory > &socketContextFactory, const std::function< void(SocketConnection *)> &onConnect, const std::function< void(SocketConnection *)> &onConnected, const std::function< void(SocketConnection *)> &onDisconnect, const std::function< void(const SocketAddress &, core::socket::State)> &onStatus, const std::shared_ptr< Config > &config) | |
SocketAcceptor (const SocketAcceptor &socketAcceptor) | |
~SocketAcceptor () override | |
Protected Types | |
using | Config = ConfigT |
using | SocketAddress = typename PhysicalServerSocket::SocketAddress |
using | SocketConnection = SocketConnectionT< PhysicalServerSocket, Config > |
Protected Member Functions | |
virtual void | useNextSocketAddress ()=0 |
virtual void | init () |
void | destruct () final |
![]() | |
AcceptEventReceiver (const std::string &name, const utils::Timeval &timeout) | |
virtual void | acceptTimeout () |
![]() | |
bool | enable (int fd) |
void | disable () |
void | suspend () |
void | resume () |
DescriptorEventReceiver (const std::string &name, DescriptorEventPublisher &descriptorEventPublisher, const utils::Timeval &timeout=TIMEOUT::DISABLE) | |
int | getRegisteredFd () const |
bool | isEnabled () const |
bool | isSuspended () const |
void | setTimeout (const utils::Timeval &timeout) |
utils::Timeval | getTimeout (const utils::Timeval ¤tTime) const |
void | checkTimeout (const utils::Timeval ¤tTime) |
![]() | |
void | observed () |
void | unObserved () |
Observer ()=default | |
Observer (Observer &)=delete | |
Observer (Observer &&)=delete | |
virtual | ~Observer () |
![]() | |
virtual | ~EventReceiver ()=default |
EventReceiver (const std::string &name) | |
EventReceiver (EventReceiver &)=delete | |
EventReceiver (EventReceiver &&)=delete | |
EventReceiver & | operator= (EventReceiver &)=delete |
EventReceiver & | operator= (EventReceiver &&)=delete |
void | span () |
void | relax () |
const std::string & | getName () const |
Protected Attributes | |
std::shared_ptr< core::socket::stream::SocketContextFactory > | socketContextFactory = nullptr |
std::function< void(SocketConnection *)> | onConnect |
std::function< void(SocketConnection *)> | onConnected |
std::function< void(SocketConnection *)> | onDisconnect |
std::function< void(const SocketAddress &, core::socket::State)> | onStatus = nullptr |
std::shared_ptr< Config > | config |
Private Types | |
using | PhysicalServerSocket = PhysicalSocketServerT |
Private Member Functions | |
void | acceptEvent () final |
void | unobservedEvent () final |
Private Attributes | |
PhysicalServerSocket | physicalServerSocket |
SocketAddress | localAddress |
Sequence diagram showing how a connect to a peer is performed.
Definition at line 69 of file SocketAcceptor.h.
|
protected |
Definition at line 74 of file SocketAcceptor.h.
|
private |
Definition at line 71 of file SocketAcceptor.h.
|
protected |
Definition at line 75 of file SocketAcceptor.h.
|
protected |
Definition at line 76 of file SocketAcceptor.h.
core::socket::stream::SocketAcceptor< PhysicalSocketServer, Config, SocketConnection >::SocketAcceptor | ( | const std::shared_ptr< core::socket::stream::SocketContextFactory > & | socketContextFactory, |
const std::function< void(SocketConnection *)> & | onConnect, | ||
const std::function< void(SocketConnection *)> & | onConnected, | ||
const std::function< void(SocketConnection *)> & | onDisconnect, | ||
const std::function< void(const SocketAddress &, core::socket::State)> & | onStatus, | ||
const std::shared_ptr< Config > & | config | ||
) |
Definition at line 61 of file SocketAcceptor.hpp.
References core::EventReceiver::atNextTick(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::config, core::eventLoopState(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::init(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onConnect, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onConnected, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onDisconnect, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onStatus, core::RUNNING, and core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::socketContextFactory.
core::socket::stream::SocketAcceptor< PhysicalSocketServer, Config, SocketConnection >::SocketAcceptor | ( | const SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT > & | socketAcceptor | ) |
Definition at line 87 of file SocketAcceptor.hpp.
|
override |
Definition at line 107 of file SocketAcceptor.hpp.
|
finalprivatevirtual |
Implements core::eventreceiver::AcceptEventReceiver.
Definition at line 206 of file SocketAcceptor.hpp.
References core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::config, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onConnect, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onConnected, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onDisconnect, and core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::physicalServerSocket.
|
finalprotectedvirtual |
Reimplemented from core::EventReceiver.
Definition at line 237 of file SocketAcceptor.hpp.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::init(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::unobservedEvent(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::unobservedEvent().
|
protectedvirtual |
Reimplemented in core::socket::stream::tls::SocketAcceptor< PhysicalSocketServerT, ConfigT >.
Definition at line 113 of file SocketAcceptor.hpp.
References core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::config, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::destruct(), core::DescriptorEventReceiver::enable(), core::DescriptorEventReceiver::isEnabled(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::localAddress, core::socket::State::NO_RETRY, core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::onStatus, core::socket::State::operator|(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::physicalServerSocket, core::DescriptorEventReceiver::setTimeout(), and core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::useNextSocketAddress().
Referenced by core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::acceptEvent(), and core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor().
|
finalprivatevirtual |
Implements core::Observer.
Definition at line 230 of file SocketAcceptor.hpp.
References core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::destruct().
|
protectedpure virtual |
Implemented in core::socket::stream::legacy::SocketAcceptor< PhysicalServerSocketT, ConfigT >, and core::socket::stream::tls::SocketAcceptor< PhysicalSocketServerT, ConfigT >.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::init().
|
protected |
Definition at line 116 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::acceptEvent(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::init(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::~SocketAcceptor().
|
private |
Definition at line 105 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::init().
|
protected |
Definition at line 110 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::acceptEvent(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::~SocketAcceptor().
|
protected |
Definition at line 111 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::acceptEvent(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::~SocketAcceptor().
|
protected |
Definition at line 112 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::acceptEvent(), core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::~SocketAcceptor().
|
protected |
|
private |
|
protected |
Definition at line 108 of file SocketAcceptor.h.
Referenced by core::socket::stream::SocketAcceptor< PhysicalSocketServerT, ConfigT, SocketConnectionT >::SocketAcceptor(), and core::socket::stream::SocketAcceptor< PhysicalServerSocketT, ConfigT, core::socket::stream::legacy::SocketConnection >::~SocketAcceptor().