00001 // ESF_Delayed_Command.cpp,v 1.10 2006/03/14 06:14:25 jtc Exp 00002 00003 #ifndef TAO_ESF_DELAYED_COMMAND_CPP 00004 #define TAO_ESF_DELAYED_COMMAND_CPP 00005 00006 #include "orbsvcs/ESF/ESF_Delayed_Command.h" 00007 00008 #if ! defined (__ACE_INLINE__) 00009 #include "orbsvcs/ESF/ESF_Delayed_Command.i" 00010 #endif /* __ACE_INLINE__ */ 00011 00012 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00013 00014 template<class Target, class Object> int 00015 TAO_ESF_Connected_Command<Target,Object>::execute (void* arg) 00016 { 00017 if (arg != 0) 00018 { 00019 ACE_ENV_EMIT_CODE (CORBA::Environment &ACE_TRY_ENV = 00020 *static_cast<CORBA::Environment*> (arg)); 00021 this->target_->connected_i (this->object_ 00022 ACE_ENV_ARG_PARAMETER); 00023 } 00024 else 00025 { 00026 ACE_ENV_EMIT_CODE (ACE_DECLARE_NEW_CORBA_ENV); 00027 this->target_->connected_i (this->object_ 00028 ACE_ENV_ARG_PARAMETER); 00029 } 00030 00031 return 0; 00032 } 00033 00034 // **************************************************************** 00035 00036 template<class Target, class Object> int 00037 TAO_ESF_Reconnected_Command<Target,Object>::execute (void* arg) 00038 { 00039 if (arg != 0) 00040 { 00041 ACE_ENV_EMIT_CODE (CORBA::Environment &ACE_TRY_ENV = 00042 *static_cast<CORBA::Environment*> (arg)); 00043 this->target_->reconnected_i (this->object_ 00044 ACE_ENV_ARG_PARAMETER); 00045 } 00046 else 00047 { 00048 ACE_ENV_EMIT_CODE (ACE_DECLARE_NEW_CORBA_ENV); 00049 this->target_->reconnected_i (this->object_ 00050 ACE_ENV_ARG_PARAMETER); 00051 } 00052 return 0; 00053 } 00054 00055 // **************************************************************** 00056 00057 template<class Target, class Object> int 00058 TAO_ESF_Disconnected_Command<Target,Object>::execute (void* arg) 00059 { 00060 if (arg != 0) 00061 { 00062 ACE_ENV_EMIT_CODE (CORBA::Environment &ACE_TRY_ENV = 00063 *static_cast<CORBA::Environment*> (arg)); 00064 this->target_->disconnected_i (this->object_ 00065 ACE_ENV_ARG_PARAMETER); 00066 } 00067 else 00068 { 00069 ACE_ENV_EMIT_CODE (ACE_DECLARE_NEW_CORBA_ENV); 00070 this->target_->disconnected_i (this->object_ 00071 ACE_ENV_ARG_PARAMETER); 00072 } 00073 return 0; 00074 } 00075 00076 // **************************************************************** 00077 00078 template<class Target> int 00079 TAO_ESF_Shutdown_Command<Target>::execute (void* arg) 00080 { 00081 if (arg != 0) 00082 { 00083 ACE_ENV_EMIT_CODE (CORBA::Environment &ACE_TRY_ENV = 00084 *static_cast<CORBA::Environment*> (arg)); 00085 this->target_->shutdown_i (ACE_ENV_SINGLE_ARG_PARAMETER); 00086 } 00087 else 00088 { 00089 ACE_ENV_EMIT_CODE (ACE_DECLARE_NEW_CORBA_ENV); 00090 this->target_->shutdown_i (ACE_ENV_SINGLE_ARG_PARAMETER); 00091 } 00092 return 0; 00093 } 00094 00095 TAO_END_VERSIONED_NAMESPACE_DECL 00096 00097 #endif /* TAO_ESF_DELAYED_COMMAND_CPP */