TAO_CEC_Ping_Pull_Supplier Class Reference

#include <CEC_Reactive_SupplierControl.h>

Inheritance diagram for TAO_CEC_Ping_Pull_Supplier:

Inheritance graph
[legend]
Collaboration diagram for TAO_CEC_Ping_Pull_Supplier:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_CEC_Ping_Pull_Supplier (TAO_CEC_SupplierControl *control)
virtual void work (TAO_CEC_ProxyPullConsumer *consumer)

Private Attributes

TAO_CEC_SupplierControlcontrol_

Constructor & Destructor Documentation

ACE_INLINE TAO_CEC_Ping_Pull_Supplier::TAO_CEC_Ping_Pull_Supplier TAO_CEC_SupplierControl control  ) 
 

Definition at line 29 of file CEC_Reactive_SupplierControl.i.

00030   :  control_ (control)
00031 {
00032 }


Member Function Documentation

void TAO_CEC_Ping_Pull_Supplier::work TAO_CEC_ProxyPullConsumer consumer  )  [virtual]
 

Implements TAO_ESF_Worker< TAO_CEC_ProxyPullConsumer >.

Definition at line 501 of file CEC_Reactive_SupplierControl.cpp.

References ACE_CATCH, ACE_CATCHANY, ACE_ENDTRY, ACE_ENV_ARG_PARAMETER, ACE_TRY, ACE_TRY_CHECK, TAO_CEC_SupplierControl::need_to_disconnect(), and TAO_CEC_SupplierControl::supplier_not_exist().

00503 {
00504   ACE_TRY
00505     {
00506       CORBA::Boolean disconnected;
00507       CORBA::Boolean non_existent =
00508         consumer->supplier_non_existent (disconnected
00509                                          ACE_ENV_ARG_PARAMETER);
00510       ACE_TRY_CHECK;
00511       if (non_existent && !disconnected)
00512         {
00513           this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER);
00514           ACE_TRY_CHECK;
00515         }
00516     }
00517   ACE_CATCH (CORBA::OBJECT_NOT_EXIST, ex)
00518     {
00519       this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER);
00520       ACE_TRY_CHECK;
00521     }
00522   ACE_CATCH (CORBA::TRANSIENT, transient)
00523     {
00524       if (this->control_->need_to_disconnect (consumer))
00525         {
00526           this->control_->supplier_not_exist (consumer ACE_ENV_ARG_PARAMETER);
00527           ACE_TRY_CHECK;
00528         }
00529     }
00530   ACE_CATCHANY
00531     {
00532       // Ignore all exceptions
00533     }
00534   ACE_ENDTRY;
00535 }


Member Data Documentation

TAO_CEC_SupplierControl* TAO_CEC_Ping_Pull_Supplier::control_ [private]
 

Definition at line 218 of file CEC_Reactive_SupplierControl.h.


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 13:19:33 2006 for TAO_CosEvent by doxygen 1.3.6