Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_EC_Reactive_SupplierControl Class Reference

SupplierControl. More...

#include <EC_Reactive_SupplierControl.h>

Inheritance diagram for TAO_EC_Reactive_SupplierControl

Inheritance graph
[legend]
Collaboration diagram for TAO_EC_Reactive_SupplierControl:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_EC_Reactive_SupplierControl (const ACE_Time_Value &rate, TAO_EC_Event_Channel *event_channel, CORBA::ORB_ptr orb)
 Constructor. It does not assume ownership of the <event_channel> parameter.

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)
 Activate any internal threads or timers used to poll the state of the suppliers.

virtual int shutdown (void)
virtual void supplier_not_exist (TAO_EC_ProxyPushConsumer *proxy, CORBA::Environment &)
virtual void system_exception (TAO_EC_ProxyPushConsumer *proxy, CORBA::SystemException &, CORBA::Environment &)

Private Methods

void query_suppliers (CORBA::Environment &ACE_TRY_ENV)
 Check if the suppliers still exists. It is a helper method for handle_timeout() to isolate the exceptions.


Private Attributes

ACE_Time_Value rate_
 The polling rate.

TAO_EC_SupplierControl_Adapter adapter_
 The Adapter for the reactor events.

TAO_EC_Event_Channelevent_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_Reactorreactor_
 The ORB reactor.


Detailed Description

SupplierControl.

Defines the interface for the supplier control strategy. This strategy handles misbehaving or failing suppliers.


Constructor & Destructor Documentation

TAO_EC_Reactive_SupplierControl::TAO_EC_Reactive_SupplierControl ( const ACE_Time_Value & rate,
TAO_EC_Event_Channel * event_channel,
CORBA::ORB_ptr orb ) [inline]
 

Constructor. It does not assume ownership of the <event_channel> parameter.

TAO_EC_Reactive_SupplierControl::~TAO_EC_Reactive_SupplierControl ( void ) [virtual]
 

destructor...


Member Function Documentation

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 ( CORBA::Environment & ACE_TRY_ENV ) [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,
CORBA::Environment & ACE_TRY_ENV ) [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 &,
CORBA::Environment & ACE_TRY_ENV ) [virtual]
 


Member Data Documentation

TAO_EC_SupplierControl_Adapter TAO_EC_Reactive_SupplierControl::adapter_ [private]
 

The Adapter for the reactor events.

TAO_EC_Event_Channel * TAO_EC_Reactive_SupplierControl::event_channel_ [private]
 

The event channel.

CORBA::ORB_var TAO_EC_Reactive_SupplierControl::orb_ [private]
 

The ORB.

CORBA::PolicyCurrent_var TAO_EC_Reactive_SupplierControl::policy_current_ [private]
 

To control the timeout policy in the thread.

CORBA::PolicyList TAO_EC_Reactive_SupplierControl::policy_list_ [private]
 

Precomputed policy list to the set timeout.

ACE_Time_Value TAO_EC_Reactive_SupplierControl::rate_ [private]
 

The polling rate.

ACE_Reactor * TAO_EC_Reactive_SupplierControl::reactor_ [private]
 

The ORB reactor.


The documentation for this class was generated from the following files:
Generated at Wed Nov 21 12:07:11 2001 for TAO_RTEvent by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000