| 772 | } |
| 773 | |
| 774 | void |
| 775 | ManagerImpl::processDeferred() |
| 776 | { |
| 777 | ACE_GUARD(ACE_Thread_Mutex, |
| 778 | guard, |
| 779 | this->deferred_lock_); |
| 780 | |
| 781 | { |
| 782 | std::list<OwnerUpdate>::iterator current = this->deferredOwnerships_.begin(); |
| 783 | |
| 784 | while (current != this->deferredOwnerships_.end()) { |
| 785 | if (this->info_->changeOwnership(current->domain, |
| 786 | current->participant, |
| 787 | current->sender, |
| 788 | current->owner)) { |
| 789 | if (OpenDDS::DCPS::DCPS_debug_level > 9) { |
| 790 | OpenDDS::DCPS::RepoIdConverter converter(current->participant); |
| 791 | ACE_DEBUG((LM_DEBUG, |
| 792 | ACE_TEXT("(%P|%t) Federator::ManagerImpl::processDeferred( OwnerUpdate): ") |
| 793 | ACE_TEXT("repo %d - [ domain %d/ participant %C/ sender %d/ owner %d ]\n"), |
| 794 | this->id().id(), |
| 795 | current->domain, |
| 796 | std::string(converter).c_str(), |
| 797 | current->sender, |
| 798 | current->owner)); |
| 799 | } |
| 800 | |
| 801 | current = this->deferredOwnerships_.erase(current); |
| 802 | |
| 803 | } else { |
| 804 | ++ current; |
| 805 | } |
| 806 | } |
| 807 | } |
| 808 | |
| 809 | { |
| 810 | std::list<TopicUpdate>::iterator current = this->deferredTopics_.begin(); |
| 811 | |
| 812 | while (current != this->deferredTopics_.end()) { |
| 813 | if (true == this->info_->add_topic(current->id, |
| 814 | current->domain, |
| 815 | current->participant, |
| 816 | current->topic, |
| 817 | current->datatype, |
| 818 | current->qos)) { |
| 819 | if (OpenDDS::DCPS::DCPS_debug_level > 9) { |
| 820 | OpenDDS::DCPS::RepoIdConverter part_converter(current->participant); |
| 821 | OpenDDS::DCPS::RepoIdConverter topic_converter(current->id); |
| 822 | ACE_DEBUG((LM_DEBUG, |
| 823 | ACE_TEXT("(%P|%t) Federator::ManagerImpl::processDeferred( TopicUpdate): ") |
| 824 | ACE_TEXT("repo %d - [ domain %d/ participant %C/ topic %C ]\n"), |
| 825 | this->id().id(), |
| 826 | current->domain, |
| 827 | std::string(part_converter).c_str(), |
| 828 | std::string(topic_converter).c_str())); |
| 829 | } |
| 830 | |
| 831 | current = this->deferredTopics_.erase(current); |
no test coverage detected