#include <ProxyPushSupplier.h>
Inheritance diagram for TAO_Notify_ProxyPushSupplier:
Public Member Functions | |
TAO_Notify_ProxyPushSupplier (void) | |
Constuctor. | |
virtual | ~TAO_Notify_ProxyPushSupplier () |
Destructor. | |
virtual const char * | get_proxy_type_name (void) const |
virtual void | load_attrs (const TAO_Notify::NVPList &attrs) |
virtual CosNotifyChannelAdmin::ProxyType | MyType () throw ( CORBA::SystemException ) |
virtual void | connect_any_push_consumer (CosEventComm::PushConsumer_ptr push_consumer) throw ( CORBA::SystemException, CosEventChannelAdmin::AlreadyConnected, CosEventChannelAdmin::TypeError ) |
virtual void | disconnect_push_supplier () throw ( CORBA::SystemException ) |
Private Types | |
typedef TAO_Notify_ProxySupplier_T< POA_Event_Forwarder::ProxyPushSupplier > | SuperClass |
Private Member Functions | |
virtual void | release (void) |
TAO_Notify_Destroy_Callback methods. | |
Friends | |
class | TAO_Notify_Builder |
|
Definition at line 49 of file ProxyPushSupplier.h. |
|
Constuctor.
Definition at line 13 of file ProxyPushSupplier.cpp.
00014 { 00015 } |
|
Destructor.
Definition at line 17 of file ProxyPushSupplier.cpp.
00018 { 00019 } |
|
Definition at line 29 of file ProxyPushSupplier.cpp. References ACE_CHECK, ACE_ENV_ARG_PARAMETER, ACE_ENV_SINGLE_ARG_PARAMETER, ACE_NEW_THROW_EX, and TAO_Notify_PushConsumer::init(). Referenced by load_attrs().
00036 { 00037 // Convert Consumer to Base Type 00038 TAO_Notify_PushConsumer* consumer; 00039 ACE_NEW_THROW_EX (consumer, 00040 TAO_Notify_PushConsumer (this), 00041 CORBA::NO_MEMORY ()); 00042 00043 consumer->init (push_consumer ACE_ENV_ARG_PARAMETER); 00044 ACE_CHECK; 00045 00046 this->connect (consumer ACE_ENV_ARG_PARAMETER); 00047 ACE_CHECK; 00048 this->self_change (ACE_ENV_SINGLE_ARG_PARAMETER); 00049 } |
|
Definition at line 52 of file ProxyPushSupplier.cpp. References ACE_CHECK, and ACE_ENV_SINGLE_ARG_PARAMETER.
00056 { 00057 TAO_Notify_ProxyPushSupplier::Ptr guard( this ); 00058 this->destroy (ACE_ENV_SINGLE_ARG_PARAMETER); 00059 ACE_CHECK; 00060 this->self_change (ACE_ENV_SINGLE_ARG_PARAMETER); 00061 } |
|
Implements TAO_Notify_Proxy. Definition at line 73 of file ProxyPushSupplier.cpp.
00074 { 00075 return "proxy_push_supplier"; 00076 } |
|
Load our attributes. Each derived type should call the superclass load first before loading its own attributes. Reimplemented from TAO_Notify_Object. Definition at line 79 of file ProxyPushSupplier.cpp. References ACE_CATCHANY, ACE_CString, ACE_DECLARE_NEW_CORBA_ENV, ACE_ENDTRY, ACE_ENV_ARG_PARAMETER, ACE_TRY, ACE_TRY_CHECK, connect_any_push_consumer(), TAO_Singleton< TYPE, ACE_LOCK >::instance(), and TAO_Notify::NVPList::load().
00080 { 00081 SuperClass::load_attrs(attrs); 00082 ACE_CString ior; 00083 if (attrs.load("PeerIOR", ior)) 00084 { 00085 CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb(); 00086 ACE_DECLARE_NEW_CORBA_ENV; 00087 ACE_TRY 00088 { 00089 CosNotifyComm::PushConsumer_var pc = 00090 CosNotifyComm::PushConsumer::_nil(); 00091 if (ior.length() > 0) 00092 { 00093 CORBA::Object_var obj = 00094 orb->string_to_object(ior.c_str() ACE_ENV_ARG_PARAMETER); 00095 ACE_TRY_CHECK; 00096 pc = CosNotifyComm::PushConsumer::_unchecked_narrow(obj.in() ACE_ENV_ARG_PARAMETER); 00097 ACE_TRY_CHECK; 00098 } 00099 this->connect_any_push_consumer(pc.in() ACE_ENV_ARG_PARAMETER); 00100 ACE_TRY_CHECK; 00101 } 00102 ACE_CATCHANY 00103 { 00104 // if we can't reconnect, tough... 00105 } 00106 ACE_ENDTRY; 00107 } 00108 } |
|
Definition at line 64 of file ProxyPushSupplier.cpp.
00068 {
00069 return CosNotifyChannelAdmin::PUSH_ANY;
00070 }
|
|
TAO_Notify_Destroy_Callback methods.
Implements TAO_Notify_Refcountable. Definition at line 22 of file ProxyPushSupplier.cpp.
00023 { 00024 delete this; 00025 //@@ inform factory 00026 } |
|
Reimplemented from TAO_Notify_Object. Definition at line 50 of file ProxyPushSupplier.h. |