TAO_CEC_Ping_Pull_Consumer Class Reference

#include <CEC_Reactive_ConsumerControl.h>

Inheritance diagram for TAO_CEC_Ping_Pull_Consumer:

Inheritance graph
[legend]
Collaboration diagram for TAO_CEC_Ping_Pull_Consumer:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_CEC_Ping_Pull_Consumer (TAO_CEC_ConsumerControl *control)
virtual void work (TAO_CEC_ProxyPullSupplier *supplier)

Private Attributes

TAO_CEC_ConsumerControlcontrol_

Constructor & Destructor Documentation

ACE_INLINE TAO_CEC_Ping_Pull_Consumer::TAO_CEC_Ping_Pull_Consumer TAO_CEC_ConsumerControl control  ) 
 

Definition at line 18 of file CEC_Reactive_ConsumerControl.i.

00019   :  control_ (control)
00020 {
00021 }


Member Function Documentation

void TAO_CEC_Ping_Pull_Consumer::work TAO_CEC_ProxyPullSupplier supplier  )  [virtual]
 

Implements TAO_ESF_Worker< TAO_CEC_ProxyPullSupplier >.

Definition at line 456 of file CEC_Reactive_ConsumerControl.cpp.

References ACE_CATCH, ACE_CATCHANY, ACE_ENDTRY, ACE_ENV_ARG_PARAMETER, ACE_TRY, ACE_TRY_CHECK, TAO_CEC_ConsumerControl::consumer_not_exist(), and TAO_CEC_ConsumerControl::need_to_disconnect().

00458 {
00459   ACE_TRY
00460     {
00461       CORBA::Boolean disconnected;
00462       CORBA::Boolean non_existent =
00463         supplier->consumer_non_existent (disconnected
00464                                          ACE_ENV_ARG_PARAMETER);
00465       ACE_TRY_CHECK;
00466       if (non_existent && !disconnected)
00467         {
00468           this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER);
00469           ACE_TRY_CHECK;
00470         }
00471     }
00472   ACE_CATCH (CORBA::OBJECT_NOT_EXIST, ex)
00473     {
00474       this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER);
00475       ACE_TRY_CHECK;
00476     }
00477   ACE_CATCH (CORBA::TRANSIENT, transient)
00478     {
00479       if (this->control_->need_to_disconnect (supplier))
00480         {
00481           this->control_->consumer_not_exist (supplier ACE_ENV_ARG_PARAMETER);
00482           ACE_TRY_CHECK;
00483         }
00484     }
00485   ACE_CATCHANY
00486     {
00487       // Ignore all exceptions
00488     }
00489   ACE_ENDTRY;
00490 }


Member Data Documentation

TAO_CEC_ConsumerControl* TAO_CEC_Ping_Pull_Consumer::control_ [private]
 

Definition at line 202 of file CEC_Reactive_ConsumerControl.h.


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