xrpld
Loading...
Searching...
No Matches
xrpl::Door< Handler >::Detector Class Reference
Inheritance diagram for xrpl::Door< Handler >::Detector:
Collaboration diagram for xrpl::Door< Handler >::Detector:

Public Member Functions

 Detector (Port const &port, Handler &handler, boost::asio::io_context &ioc, StreamType &&stream, EndpointType remoteAddress, beast::Journal j)
void run ()
void close () override
IOList & ios ()
 Return the IOList associated with the work.
T shared_from_this (T... args)
T weak_from_this (T... args)

Private Member Functions

void doDetect (YieldContext yield)
template<class = void>
void destroy ()

Private Attributes

Port const & port_
Handler & handler_
boost::asio::io_context & ioc_
StreamType stream_
SocketType & socket_
EndpointType remoteAddress_
boost::asio::strand< boost::asio::io_context::executor_type > strand_
beast::Journal const j_
IOList * ios_ = nullptr

Detailed Description

template<class Handler>
class xrpl::Door< Handler >::Detector

Definition at line 61 of file Door.h.

Constructor & Destructor Documentation

◆ Detector()

template<class Handler>
xrpl::Door< Handler >::Detector::Detector ( Port const & port,
Handler & handler,
boost::asio::io_context & ioc,
StreamType && stream,
EndpointType remoteAddress,
beast::Journal j )

Definition at line 164 of file Door.h.

Member Function Documentation

◆ run()

template<class Handler>
void xrpl::Door< Handler >::Detector::run ( )

Definition at line 184 of file Door.h.

◆ close()

template<class Handler>
void xrpl::Door< Handler >::Detector::close ( )
overridevirtual

Implements xrpl::IOList::Work.

Definition at line 192 of file Door.h.

◆ doDetect()

template<class Handler>
void xrpl::Door< Handler >::Detector::doDetect ( YieldContext yield)
private

Definition at line 199 of file Door.h.

◆ destroy()

template<class = void>
void xrpl::IOList::Work::destroy ( )
privateinherited

Definition at line 170 of file io_list.h.

◆ ios()

IOList & xrpl::IOList::Work::ios ( )
inherited

Return the IOList associated with the work.

Requirements: The call to IOList::emplace to create the work has already returned.

Definition at line 44 of file io_list.h.

Member Data Documentation

◆ port_

template<class Handler>
Port const& xrpl::Door< Handler >::Detector::port_
private

Definition at line 64 of file Door.h.

◆ handler_

template<class Handler>
Handler& xrpl::Door< Handler >::Detector::handler_
private

Definition at line 65 of file Door.h.

◆ ioc_

template<class Handler>
boost::asio::io_context& xrpl::Door< Handler >::Detector::ioc_
private

Definition at line 66 of file Door.h.

◆ stream_

template<class Handler>
StreamType xrpl::Door< Handler >::Detector::stream_
private

Definition at line 67 of file Door.h.

◆ socket_

template<class Handler>
SocketType& xrpl::Door< Handler >::Detector::socket_
private

Definition at line 68 of file Door.h.

◆ remoteAddress_

template<class Handler>
EndpointType xrpl::Door< Handler >::Detector::remoteAddress_
private

Definition at line 69 of file Door.h.

◆ strand_

template<class Handler>
boost::asio::strand<boost::asio::io_context::executor_type> xrpl::Door< Handler >::Detector::strand_
private

Definition at line 70 of file Door.h.

◆ j_

template<class Handler>
beast::Journal const xrpl::Door< Handler >::Detector::j_
private

Definition at line 71 of file Door.h.

◆ ios_

IOList* xrpl::IOList::Work::ios_ = nullptr
privateinherited

Definition at line 28 of file io_list.h.