Scheduler< Impl, ImplPtr >::AcceptReq Class Reference

#include <scheduler.h>

Inheritance diagram for Scheduler< Impl, ImplPtr >::AcceptReq:

Inheritance graph
[legend]
Collaboration diagram for Scheduler< Impl, ImplPtr >::AcceptReq:

Collaboration graph
[legend]
List of all members.

Detailed Description

template<typename Impl, typename ImplPtr = Impl*>
class Scheduler< Impl, ImplPtr >::AcceptReq

Accept request indicates we wish to accept an incoming connection from one of the servers.

It is of generic type Connection Request. When SchedBase decides we may accept the connection, it will call doConn() member function, where we may perform actual connection accepting.

Definition at line 716 of file scheduler.h.


Public Member Functions

 AcceptReq (const SSocketWrapper &s)
 Construct.
 ~AcceptReq ()
 Destroy.
virtual int doConn ()
 Perform actual connection accepting.
virtual void notify () const
 Perform notification of frontend(s).

Private Member Functions

 AcceptReq ()
 Forbidden.

Private Attributes

SSocketWrapper m_obj
 Socket reference data.

Constructor & Destructor Documentation

template<typename Impl, typename ImplPtr = Impl*>
Scheduler< Impl, ImplPtr >::AcceptReq::AcceptReq const SSocketWrapper s  )  [inline]
 

Construct.

Definition at line 719 of file scheduler.h.

References CHECK_FAIL, Scheduler< Impl, ImplPtr >::AcceptReq::m_obj, and Scheduler< Impl, ImplPtr >::s_accReqs.

template<typename Impl, typename ImplPtr = Impl*>
Scheduler< Impl, ImplPtr >::AcceptReq::~AcceptReq  )  [inline]
 

Destroy.

Definition at line 728 of file scheduler.h.

References Scheduler< Impl, ImplPtr >::SSocketWrapper::getSocket(), Scheduler< Impl, ImplPtr >::AcceptReq::m_obj, and Scheduler< Impl, ImplPtr >::s_accReqs.

Here is the call graph for this function:

template<typename Impl, typename ImplPtr = Impl*>
Scheduler< Impl, ImplPtr >::AcceptReq::AcceptReq  )  [private]
 

Forbidden.


Member Function Documentation

template<typename Impl, typename ImplPtr = Impl*>
virtual int Scheduler< Impl, ImplPtr >::AcceptReq::doConn  )  [inline, virtual]
 

Perform actual connection accepting.

The accepted connection must be buffered into s_accepted map for later retrieval by client code. Note that we may NOT notify client code here. Notifications are managed by SchedBase.

Returns:
Bitfield of ConnReqBase::ConnRet values

Implements SchedBase::ConnReqBase.

Definition at line 740 of file scheduler.h.

References Scheduler< Impl, ImplPtr >::SSocketWrapper::getSocket(), SchedBase::ReqBase::invalidate(), Scheduler< Impl, ImplPtr >::SSocketWrapper::m_accepted, and Scheduler< Impl, ImplPtr >::AcceptReq::m_obj.

Here is the call graph for this function:

template<typename Impl, typename ImplPtr = Impl*>
virtual void Scheduler< Impl, ImplPtr >::AcceptReq::notify  )  const [inline, virtual]
 

Perform notification of frontend(s).

Implements SchedBase::ReqBase.

Definition at line 747 of file scheduler.h.

References Scheduler< Impl, ImplPtr >::AcceptReq::m_obj, Scheduler< Impl, ImplPtr >::SSocketWrapper::notify(), and SOCK_ACCEPT.

Here is the call graph for this function:


Member Data Documentation

template<typename Impl, typename ImplPtr = Impl*>
SSocketWrapper Scheduler< Impl, ImplPtr >::AcceptReq::m_obj [private]
 

Socket reference data.

Definition at line 752 of file scheduler.h.

Referenced by Scheduler< Impl, ImplPtr >::AcceptReq::AcceptReq(), Scheduler< Impl, ImplPtr >::AcceptReq::doConn(), Scheduler< Impl, ImplPtr >::AcceptReq::notify(), and Scheduler< Impl, ImplPtr >::AcceptReq::~AcceptReq().


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