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

[legend]
Collaboration diagram for TAO_EC_Reactive_SupplierControl:

[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_Channel* | 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.

## 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:

- EC_Reactive_SupplierControl.h
- EC_Reactive_SupplierControl.cpp