CosEC_ProxyPushSupplier.cpp

Go to the documentation of this file.
00001 // CosEC_ProxyPushSupplier.cpp,v 1.11 2006/03/14 06:14:34 jtc Exp
00002 
00003 #include "orbsvcs/Notify/Any/CosEC_ProxyPushSupplier.h"
00004 
00005 ACE_RCSID (Notify, TAO_Notify_CosEC_ProxyPushSupplier, "CosEC_ProxyPushSupplier.cpp,v 1.11 2006/03/14 06:14:34 jtc Exp")
00006 
00007 #include "tao/debug.h"
00008 #include "orbsvcs/Notify/Any/PushConsumer.h"
00009 
00010 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00011 
00012 TAO_Notify_CosEC_ProxyPushSupplier::TAO_Notify_CosEC_ProxyPushSupplier (void)
00013 {
00014 }
00015 
00016 TAO_Notify_CosEC_ProxyPushSupplier::~TAO_Notify_CosEC_ProxyPushSupplier ()
00017 {
00018 }
00019 
00020 void
00021 TAO_Notify_CosEC_ProxyPushSupplier::release (void)
00022 {
00023 
00024   delete this;
00025   //@@ inform factory
00026 }
00027 
00028 void
00029 TAO_Notify_CosEC_ProxyPushSupplier::connect_push_consumer (CosEventComm::PushConsumer_ptr push_consumer
00030                                                        ACE_ENV_ARG_DECL)
00031   ACE_THROW_SPEC ((
00032                    CORBA::SystemException,
00033                    CosEventChannelAdmin::AlreadyConnected,
00034                    CosEventChannelAdmin::TypeError
00035                    ))
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 }
00048 
00049 void
00050 TAO_Notify_CosEC_ProxyPushSupplier::disconnect_push_supplier (ACE_ENV_SINGLE_ARG_DECL)
00051   ACE_THROW_SPEC ((
00052                    CORBA::SystemException
00053                    ))
00054 {
00055   TAO_Notify_CosEC_ProxyPushSupplier::Ptr guard( this );
00056   this->destroy (ACE_ENV_SINGLE_ARG_PARAMETER);
00057 }
00058 
00059 const char *
00060 TAO_Notify_CosEC_ProxyPushSupplier::get_proxy_type_name (void) const
00061 {
00062   return "ec_proxy_push_supplier";
00063 }
00064 
00065 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 13:24:09 2006 for TAO_CosNotification by doxygen 1.3.6