diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp b/TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp index 69e28687a34..e646558475c 100644 --- a/TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp +++ b/TAO/orbsvcs/orbsvcs/Notify/Structured/StructuredPushSupplier.cpp @@ -1,11 +1,9 @@ // $Id$ -#include "orbsvcs/Notify/Structured/StructuredPushSupplier.h" +#include "StructuredPushSupplier.h" ACE_RCSID(RT_Notify, TAO_Notify_StructuredPushSupplier, "$Id$") -#include "orbsvcs/Notify/Properties.h" - -TAO_BEGIN_VERSIONED_NAMESPACE_DECL +#include "../Properties.h" TAO_Notify_StructuredPushSupplier::TAO_Notify_StructuredPushSupplier (TAO_Notify_ProxyConsumer* proxy) :TAO_Notify_Supplier (proxy) @@ -19,9 +17,10 @@ TAO_Notify_StructuredPushSupplier::~TAO_Notify_StructuredPushSupplier () void TAO_Notify_StructuredPushSupplier::init (CosNotifyComm::StructuredPushSupplier_ptr push_supplier ACE_ENV_ARG_DECL_NOT_USED) { - // TODO: verify single init call - // push_supplier is optional + ACE_ASSERT (push_supplier != 0 && this->push_supplier_.in() == 0); + this->push_supplier_ = CosNotifyComm::StructuredPushSupplier::_duplicate (push_supplier); + this->subscribe_ = CosNotifyComm::NotifySubscribe::_duplicate (push_supplier); } @@ -32,24 +31,23 @@ TAO_Notify_StructuredPushSupplier::release (void) //@@ inform factory } -ACE_CString -TAO_Notify_StructuredPushSupplier::get_ior (void) const +bool +TAO_Notify_StructuredPushSupplier::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 |