示例#1
0
文件: Supplier.cpp 项目: CCJY/ATCD
void
ReconnectionCallback_i::fini (void)
{
  if (this->id_is_valid_)
  {
    NotifyExt::ReconnectionRegistry_var registry =
      NotifyExt::ReconnectionRegistry::_narrow (this->ecf_.in ());

    registry->unregister_callback (this->callback_id_);
    this->id_is_valid_ = false;
  }
}
示例#2
0
void ReconnectionCallback::disconnect()
{
   if (id_is_valid_){
        try {
            NotifyExt::ReconnectionRegistry_var registry =
                NotifyExt::ReconnectionRegistry::_narrow(ecf_);
            registry->unregister_callback(callback_id_);
        } catch(CORBA::SystemException &ex) {}
         
        if (!::CORBA::is_nil(root_poa_))
            root_poa_->deactivate_object(callback_obj_id_);
        else
            services_->deactivateOffShoot(this);
        id_is_valid_ = false;
   }
}