StructuredPushSupplier.cpp

Go to the documentation of this file.
00001 // $Id: StructuredPushSupplier.cpp 76626 2007-01-26 13:50:03Z elliott_c $
00002 
00003 #include "orbsvcs/Notify/Structured/StructuredPushSupplier.h"
00004 
00005 ACE_RCSID(RT_Notify, TAO_Notify_StructuredPushSupplier, "$Id: StructuredPushSupplier.cpp 76626 2007-01-26 13:50:03Z elliott_c $")
00006 #include "orbsvcs/Notify/Properties.h"
00007 
00008 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00009 
00010 TAO_Notify_StructuredPushSupplier::TAO_Notify_StructuredPushSupplier (TAO_Notify_ProxyConsumer* proxy)
00011   :TAO_Notify_Supplier (proxy)
00012 {
00013 }
00014 
00015 TAO_Notify_StructuredPushSupplier::~TAO_Notify_StructuredPushSupplier ()
00016 {
00017 }
00018 
00019 void
00020 TAO_Notify_StructuredPushSupplier::init (CosNotifyComm::StructuredPushSupplier_ptr push_supplier)
00021 {
00022   // TODO: verify single init call
00023   // push_supplier is optional
00024   this->push_supplier_ = CosNotifyComm::StructuredPushSupplier::_duplicate (push_supplier);
00025   this->subscribe_ = CosNotifyComm::NotifySubscribe::_duplicate (push_supplier);
00026 }
00027 
00028 void
00029 TAO_Notify_StructuredPushSupplier::release (void)
00030 {
00031   delete this;
00032   //@@ inform factory
00033 }
00034 
00035 ACE_CString
00036 TAO_Notify_StructuredPushSupplier::get_ior (void) const
00037 {
00038   ACE_CString result;
00039   CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb();
00040   try
00041   {
00042     CORBA::String_var ior = orb->object_to_string(this->push_supplier_.in());
00043     result = static_cast<const char*> (ior.in ());
00044   }
00045   catch (const CORBA::Exception&)
00046   {
00047     result.fast_clear();
00048   }
00049   return result;
00050 }
00051 
00052 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Tue Feb 2 17:45:29 2010 for TAO_CosNotification by  doxygen 1.4.7