TAO 4.0.0
|
Use the Leader/Follower loop to wait for one specific event in the invocation path. More...
#include <LF_Multi_Event.h>
Classes | |
struct | Event_Node |
Public Member Functions | |
TAO_LF_Multi_Event () | |
Constructor. | |
virtual | ~TAO_LF_Multi_Event () |
Destructor. | |
virtual int | bind (TAO_LF_Follower *follower) |
Propagate the follower to all the events in the collection. | |
virtual int | unbind (TAO_LF_Follower *follower) |
Unbind the follower from all the collected events. | |
void | add_event (TAO_Connection_Handler *ch) |
Adds a handler to the collection. | |
TAO_Connection_Handler * | winner () |
TAO_Transport * | base_transport () |
Returns the transport associated with the first entry in the collection. | |
![]() | |
TAO_LF_Event () | |
Constructor. | |
virtual | ~TAO_LF_Event () |
Destructor. | |
void | state_changed (LFS_STATE new_state, TAO_Leader_Follower &lf) |
bool | successful (TAO_Leader_Follower &lf) const |
bool | error_detected (TAO_Leader_Follower &lf) const |
bool | keep_waiting (TAO_Leader_Follower &lf) const |
Check if we should keep waiting. | |
void | reset_state (LFS_STATE new_state) |
Reset the state, irrespective of the previous states. | |
Protected Member Functions | |
virtual void | state_changed_i (LFS_STATE new_state) |
Validate the state change. | |
virtual bool | is_state_final () const |
Check whether we have reached the final state.. | |
virtual bool | successful_i () const |
virtual bool | error_detected_i () const |
![]() | |
bool | keep_waiting_i () const |
Check if we should keep waiting. | |
Private Member Functions | |
void | operator= (const TAO_LF_Multi_Event &) |
TAO_LF_Multi_Event (const TAO_LF_Multi_Event &) | |
Private Attributes | |
struct Event_Node * | events_ |
TAO_Connection_Handler * | winner_ |
Additional Inherited Members | |
![]() | |
enum | LFS_STATE { LFS_IDLE = 0 , LFS_ACTIVE , LFS_CONNECTION_WAIT , LFS_SUCCESS , LFS_FAILURE , LFS_TIMEOUT , LFS_CONNECTION_CLOSED } |
The current state. More... | |
![]() | |
static const char * | state_name (LFS_STATE st) |
The current state. | |
![]() | |
LFS_STATE | state_ |
The current state. | |
TAO_LF_Follower * | follower_ |
The bounded follower. | |
Use the Leader/Follower loop to wait for one specific event in the invocation path.
Used by the parallel connection strategy for waiting on one of many connections.
TAO_LF_Multi_Event::TAO_LF_Multi_Event | ( | ) |
Constructor.
|
virtual |
Destructor.
|
private |
void TAO_LF_Multi_Event::add_event | ( | TAO_Connection_Handler * | ch | ) |
Adds a handler to the collection.
TAO_Transport * TAO_LF_Multi_Event::base_transport | ( | ) |
Returns the transport associated with the first entry in the collection.
|
virtual |
Propagate the follower to all the events in the collection.
Reimplemented from TAO_LF_Event.
|
protectedvirtual |
Return true if an error was detected while waiting for the event - This iterates over the list of events and returns true only if all of them return true from error_detected().
Implements TAO_LF_Event.
|
protectedvirtual |
Check whether we have reached the final state..
Implements TAO_LF_Event.
|
private |
|
protectedvirtual |
Validate the state change.
Implements TAO_LF_Event.
|
protectedvirtual |
Return true if the condition was satisfied successfully, false if it has not - This iterates over the list of attached events and returns true if any of them return true from successful.
Implements TAO_LF_Event.
|
virtual |
Unbind the follower from all the collected events.
Reimplemented from TAO_LF_Event.
TAO_Connection_Handler * TAO_LF_Multi_Event::winner | ( | ) |
Returns the connection handler that caused the successful status to be returned.
|
private |
|
mutableprivate |