void DDS_Base_Connector_T<CCM_TYPE>::passivate_publisher ( ::DDS::Publisher_ptr publisher, ::DDS::PublisherListener_ptr publisher_listener) { DDS4CCM_TRACE ("DDS_Base_Connector_T::passivate_publisher"); if (!::CORBA::is_nil (publisher_listener)) { DDS4CCM_DEBUG (DDS4CCM_LOG_LEVEL_ACTION, (LM_DEBUG, DDS4CCM_INFO "DDS_Base_Connector_T::passivate_publisher - " "Setting the listener on the publisher to nil\n")); DDS::ReturnCode_t const retcode = publisher->set_listener (::DDS::PublisherListener::_nil (), 0); if (retcode != ::DDS::RETCODE_OK) { DDS4CCM_ERROR (DDS4CCM_LOG_LEVEL_ERROR, (LM_ERROR, DDS4CCM_INFO "DDS_Base_Connector_T::passivate_publisher - " "Error while setting the listener on the publisher - <%C>\n", ::CIAO::DDS4CCM::translate_retcode (retcode))); throw ::CORBA::INTERNAL (); } } }
void DDS_Base_Connector_T<CCM_TYPE>::activate_publisher ( ACE_Reactor* reactor, ::DDS::Publisher_ptr publisher, ::DDS::PublisherListener_ptr & publisher_listener) { DDS4CCM_TRACE ("DDS_Base_Connector_T::activate_publisher"); ::CCM_DDS::ConnectorStatusListener_var error_listener = this->context_->get_connection_error_listener (); ::DDS::StatusMask const mask = ::CIAO::DDS4CCM::PublisherListener::get_mask (error_listener.in ()); if (mask != 0) { if (::CORBA::is_nil (publisher_listener)) { ACE_NEW_THROW_EX (publisher_listener, ::CIAO::DDS4CCM::PublisherListener ( error_listener.in (), reactor), ::CORBA::NO_MEMORY ()); } DDS::ReturnCode_t const retcode = publisher->set_listener (publisher_listener, mask); if (retcode != ::DDS::RETCODE_OK) { DDS4CCM_ERROR (DDS4CCM_LOG_LEVEL_ERROR, (LM_ERROR, DDS4CCM_INFO "DDS_Base_Connector_T::activate_publisher - " "Error while setting the listener on the publisher - <%C>\n", ::CIAO::DDS4CCM::translate_retcode (retcode))); throw ::CORBA::INTERNAL (); } } }