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