summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp25
1 files changed, 14 insertions, 11 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp b/TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp
index adaaf0b24af..df010388763 100644
--- a/TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp
+++ b/TAO/orbsvcs/orbsvcs/Notify/Sequence/SequencePushSupplier.cpp
@@ -1,10 +1,12 @@
// $Id$
-#include "SequencePushSupplier.h"
+#include "orbsvcs/Notify/Sequence/SequencePushSupplier.h"
ACE_RCSID (Notify, TAO_Notify_SequencePushSupplier, "$Id$")
-#include "../Properties.h"
+#include "orbsvcs/Notify/Properties.h"
+
+TAO_BEGIN_VERSIONED_NAMESPACE_DECL
TAO_Notify_SequencePushSupplier::TAO_Notify_SequencePushSupplier (TAO_Notify_ProxyConsumer* proxy)
:TAO_Notify_Supplier (proxy)
@@ -18,10 +20,9 @@ TAO_Notify_SequencePushSupplier::~TAO_Notify_SequencePushSupplier ()
void
TAO_Notify_SequencePushSupplier::init (CosNotifyComm::SequencePushSupplier_ptr push_supplier ACE_ENV_ARG_DECL_NOT_USED)
{
- ACE_ASSERT (push_supplier != 0 && this->push_supplier_.in() == 0);
-
+ // TODO: verify single init call
+ // push_supplier is optional
this->push_supplier_ = CosNotifyComm::SequencePushSupplier::_duplicate (push_supplier);
-
this->subscribe_ = CosNotifyComm::NotifySubscribe::_duplicate (push_supplier);
}
@@ -31,23 +32,25 @@ TAO_Notify_SequencePushSupplier::release (void)
delete this;
//@@ inform factory
}
-bool
-TAO_Notify_SequencePushSupplier::get_ior (ACE_CString & iorstr) const
+
+ACE_CString
+TAO_Notify_SequencePushSupplier::get_ior (void) const
{
- bool result = false;
+ ACE_CString result;
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;
- iorstr = static_cast<const char *> (ior.in ());
- result = true;
+ result = static_cast<const char*> (ior.in ());
}
ACE_CATCHANY
{
- ACE_ASSERT(0);
+ result.fast_clear();
}
ACE_ENDTRY;
return result;
}
+
+TAO_END_VERSIONED_NAMESPACE_DECL