TAO_RTEvent
2.0.8
|
SupplierControl. More...
#include <EC_Reactive_SupplierControl.h>
Public Member Functions | |
TAO_EC_Reactive_SupplierControl (const ACE_Time_Value &rate, const ACE_Time_Value &timeout, TAO_EC_Event_Channel_Base *event_channel, CORBA::ORB_ptr orb) | |
virtual | ~TAO_EC_Reactive_SupplierControl (void) |
Destructor. | |
void | handle_timeout (const ACE_Time_Value &tv, const void *arg) |
Receive the timeout from the adapter. | |
virtual int | activate (void) |
virtual int | shutdown (void) |
virtual void | supplier_not_exist (TAO_EC_ProxyPushConsumer *proxy) |
virtual void | system_exception (TAO_EC_ProxyPushConsumer *proxy, CORBA::SystemException &) |
Private Member Functions | |
void | query_suppliers (void) |
Private Attributes | |
ACE_Time_Value | rate_ |
The polling rate. | |
ACE_Time_Value | timeout_ |
The polling timeout. | |
TAO_EC_SupplierControl_Adapter | adapter_ |
The Adapter for the reactor events. | |
TAO_EC_Event_Channel_Base * | event_channel_ |
The event channel. | |
CORBA::ORB_var | orb_ |
The ORB. | |
CORBA::PolicyCurrent_var | policy_current_ |
To control the timeout policy in the thread. | |
CORBA::PolicyList | policy_list_ |
Precomputed policy list to the set timeout. | |
ACE_Reactor * | reactor_ |
The ORB reactor. |
SupplierControl.
Defines the interface for the supplier control strategy. This strategy handles misbehaving or failing suppliers.
TAO_EC_Reactive_SupplierControl::TAO_EC_Reactive_SupplierControl | ( | const ACE_Time_Value & | rate, |
const ACE_Time_Value & | timeout, | ||
TAO_EC_Event_Channel_Base * | event_channel, | ||
CORBA::ORB_ptr | orb | ||
) |
Constructor. It does not assume ownership of the event_channel parameter.
TAO_EC_Reactive_SupplierControl::~TAO_EC_Reactive_SupplierControl | ( | void | ) | [virtual] |
Destructor.
int TAO_EC_Reactive_SupplierControl::activate | ( | void | ) | [virtual] |
Activate any internal threads or timers used to poll the state of the suppliers
Reimplemented from TAO_EC_SupplierControl.
void TAO_EC_Reactive_SupplierControl::handle_timeout | ( | const ACE_Time_Value & | tv, |
const void * | arg | ||
) |
Receive the timeout from the adapter.
void TAO_EC_Reactive_SupplierControl::query_suppliers | ( | void | ) | [private] |
Check if the suppliers still exists. It is a helper method for handle_timeout() to isolate the exceptions.
int TAO_EC_Reactive_SupplierControl::shutdown | ( | void | ) | [virtual] |
Reimplemented from TAO_EC_SupplierControl.
void TAO_EC_Reactive_SupplierControl::supplier_not_exist | ( | TAO_EC_ProxyPushConsumer * | proxy | ) | [virtual] |
Invoked by helper classes when they detect that a supplier does not exists (i.e. _non_existent() returns true and/or the CORBA::OBJECT_NOT_EXIST exception has been raised).
Reimplemented from TAO_EC_SupplierControl.
void TAO_EC_Reactive_SupplierControl::system_exception | ( | TAO_EC_ProxyPushConsumer * | proxy, |
CORBA::SystemException & | |||
) | [virtual] |
Some system exception was raised while trying to contact the supplier
Reimplemented from TAO_EC_SupplierControl.
The Adapter for the reactor events.
The event channel.
The ORB.
To control the timeout policy in the thread.
Precomputed policy list to the set timeout.
The polling rate.
The ORB reactor.
The polling timeout.