diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp b/TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp index e60246795e2..a554c4cc2cc 100644 --- a/TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/Notify/Any/PushSupplier.cpp @@ -1,11 +1,9 @@ // $Id$ -#include "orbsvcs/Notify/Any/PushSupplier.h" +#include "PushSupplier.h" ACE_RCSID (Notify, TAO_Notify_PushSupplier, "$Id$") -#include "orbsvcs/Notify/Properties.h" - -TAO_BEGIN_VERSIONED_NAMESPACE_DECL +#include "../Properties.h" TAO_Notify_PushSupplier::TAO_Notify_PushSupplier (TAO_Notify_ProxyConsumer* proxy) :TAO_Notify_Supplier (proxy) @@ -19,8 +17,8 @@ TAO_Notify_PushSupplier::~TAO_Notify_PushSupplier () void TAO_Notify_PushSupplier::init (CosEventComm::PushSupplier_ptr push_supplier ACE_ENV_ARG_DECL) { - // TODO: verify single init call - // push_supplier is optional + ACE_ASSERT (push_supplier != 0 && this->push_supplier_.in() == 0); + this->push_supplier_ = CosEventComm::PushSupplier::_duplicate (push_supplier); ACE_TRY @@ -41,25 +39,23 @@ TAO_Notify_PushSupplier::release (void) delete this; //@@ inform factory } - -ACE_CString -TAO_Notify_PushSupplier::get_ior (void) const +bool +TAO_Notify_PushSupplier::get_ior (ACE_CString & iorstr) const { - ACE_CString result; + bool result = false; CORBA::ORB_var orb = TAO_Notify_PROPERTIES::instance()->orb(); ACE_DECLARE_NEW_CORBA_ENV; ACE_TRY { CORBA::String_var ior = orb->object_to_string(this->push_supplier_.in() ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - result = static_cast<const char*> (ior.in ()); + iorstr = static_cast<const char *> (ior.in ()); + result = true; } ACE_CATCHANY { - result.fast_clear(); + ACE_ASSERT(0); } ACE_ENDTRY; return result; } - -TAO_END_VERSIONED_NAMESPACE_DECL |