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

# TAO_CEC_Reactive_SupplierControl Class Reference

SupplierControl. More...

`#include <CEC_Reactive_SupplierControl.h>`

Inheritance diagram for TAO_CEC_Reactive_SupplierControl:

[legend]
Collaboration diagram for TAO_CEC_Reactive_SupplierControl:

[legend]
List of all members.

## Public Methods
| TAO_CEC_Reactive_SupplierControl (const ACE_Time_Value &rate, TAO_CEC_EventChannel *event_channel, CORBA::ORB_ptr orb)
| Constructor. It does not assume ownership of the <event_channel> parameter. More...
virtual | ~TAO_CEC_Reactive_SupplierControl (void)
| destructor... More...
void | handle_timeout (const ACE_Time_Value &tv, const void *arg)
| Receive the timeout from the adapter. More...
virtual int | activate (void)
| Activate any internal threads or timers used to poll the state of the suppliers. More...
virtual int | shutdown (void)
virtual void | supplier_not_exist (TAO_CEC_ProxyPushConsumer *proxy ACE_ENV_ARG_DECL_NOT_USED)
| Invoked by helper classes when they detect that a supplier does not exists (i.e. More...
virtual void | supplier_not_exist (TAO_CEC_ProxyPullConsumer *proxy ACE_ENV_ARG_DECL_NOT_USED)
| Invoked by helper classes when they detect that a supplier does not exists (i.e. More...
virtual void | system_exception (TAO_CEC_ProxyPullConsumer *proxy, CORBA::SystemException &ACE_ENV_ARG_DECL_NOT_USED)
| Some system exception was rasied while trying to push an event. More...
## Private Methods
void | query_suppliers (ACE_ENV_SINGLE_ARG_DECL)
| Check if the suppliers still exists. It is a helper method for handle_timeout() to isolate the exceptions. More...
## Private Attributes
ACE_Time_Value | rate_
| The polling rate. More...
TAO_CEC_SupplierControl_Adapter | adapter_
| The Adapter for the reactor events. More...
TAO_CEC_EventChannel * | event_channel_
| The event channel. More...
CORBA::ORB_var | orb_
| The ORB. More...
CORBA::PolicyCurrent_var | policy_current_
| To control the timeout policy in the thread. More...
CORBA::PolicyList | policy_list_
| Precomputed policy list to the set timeout. More...
ACE_Reactor * | reactor_
| The ORB reactor. More...
int | timer_id_
| The timer id. More...

## Detailed Description

SupplierControl.

Defines the interface for the supplier control strategy. This strategy handles misbehaving or failing suppliers. = MEMORY MANAGMENT = LOCKING = TODO

## Constructor & Destructor Documentation

TAO_CEC_Reactive_SupplierControl::TAO_CEC_Reactive_SupplierControl | ( | const ACE_Time_Value & | rate,
|  | TAO_CEC_EventChannel * | ec,
|  | CORBA::ORB_ptr | orb
| ) |

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

TAO_CEC_Reactive_SupplierControl::~TAO_CEC_Reactive_SupplierControl | ( | void |  | ) | `[virtual]`

| destructor...

## Member Function Documentation

int TAO_CEC_Reactive_SupplierControl::activate | ( | void |  | ) | `[virtual]`

| Activate any internal threads or timers used to poll the state of the suppliers. Reimplemented from TAO_CEC_SupplierControl.

void TAO_CEC_Reactive_SupplierControl::handle_timeout | ( | const ACE_Time_Value & | tv,
|  | const void * | arg
| ) |

| Receive the timeout from the adapter.

void TAO_CEC_Reactive_SupplierControl::query_suppliers | ( | ACE_ENV_SINGLE_ARG_DECL |  | ) | `[private]`

| Check if the suppliers still exists. It is a helper method for handle_timeout() to isolate the exceptions.

int TAO_CEC_Reactive_SupplierControl::shutdown | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_CEC_SupplierControl.

void TAO_CEC_Reactive_SupplierControl::supplier_not_exist | ( | TAO_CEC_ProxyPullConsumer *proxy | ACE_ENV_ARG_DECL | ) | `[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_CEC_SupplierControl.

void TAO_CEC_Reactive_SupplierControl::supplier_not_exist | ( | TAO_CEC_ProxyPushConsumer *proxy | ACE_ENV_ARG_DECL | ) | `[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_CEC_SupplierControl.

void TAO_CEC_Reactive_SupplierControl::system_exception | ( | TAO_CEC_ProxyPullConsumer * | proxy,
|  | CORBA::SystemException & | ACE_ENV_ARG_DECL
| ) | `[virtual]`

| Some system exception was rasied while trying to push an event. Reimplemented from TAO_CEC_SupplierControl.

## Member Data Documentation

TAO_CEC_SupplierControl_Adapter TAO_CEC_Reactive_SupplierControl::adapter_`[private]`

| The Adapter for the reactor events.

TAO_CEC_EventChannel* TAO_CEC_Reactive_SupplierControl::event_channel_`[private]`

| The event channel.

CORBA::ORB_var TAO_CEC_Reactive_SupplierControl::orb_`[private]`

| The ORB.

CORBA::PolicyCurrent_var TAO_CEC_Reactive_SupplierControl::policy_current_`[private]`

| To control the timeout policy in the thread.

CORBA::PolicyList TAO_CEC_Reactive_SupplierControl::policy_list_`[private]`

| Precomputed policy list to the set timeout.

ACE_Time_Value TAO_CEC_Reactive_SupplierControl::rate_`[private]`

| The polling rate.

ACE_Reactor* TAO_CEC_Reactive_SupplierControl::reactor_`[private]`

| The ORB reactor.

int TAO_CEC_Reactive_SupplierControl::timer_id_`[private]`

| The timer id.

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

- CEC_Reactive_SupplierControl.h
- CEC_Reactive_SupplierControl.cpp