| 1251 | } |
| 1252 | |
| 1253 | void |
| 1254 | ManagerImpl::pushState(Manager_ptr peer) |
| 1255 | { |
| 1256 | // foreach DCPS_IR_Domain |
| 1257 | // foreach DCPS_IR_Participant |
| 1258 | // peer->initializeParticipant(...) |
| 1259 | // peer->initializeOwner(...) |
| 1260 | // foreach DCPS_IR_Participant |
| 1261 | // foreach DCPS_IR_Topic |
| 1262 | // peer->initializeTopic(...) |
| 1263 | // foreach DCPS_IR_Publication |
| 1264 | // peer->initializePublication(...) |
| 1265 | // foreach DCPS_IR_Subscription |
| 1266 | // peer->initializeSubscription(...) |
| 1267 | |
| 1268 | // Process each domain within the repository. |
| 1269 | for (DCPS_IR_Domain_Map::const_iterator currentDomain |
| 1270 | = this->info_->domains().begin(); |
| 1271 | currentDomain != this->info_->domains().end(); |
| 1272 | ++currentDomain) { |
| 1273 | |
| 1274 | if (currentDomain->second->get_id() == this->config_.federationDomain()) { |
| 1275 | // Do not push the Federation domain publications. |
| 1276 | //continue; |
| 1277 | } |
| 1278 | |
| 1279 | // Process each participant within the current domain. |
| 1280 | for (DCPS_IR_Participant_Map::const_iterator currentParticipant |
| 1281 | = currentDomain->second->participants().begin(); |
| 1282 | currentParticipant != currentDomain->second->participants().end(); |
| 1283 | ++currentParticipant) { |
| 1284 | |
| 1285 | if (currentParticipant->second->isBitPublisher() == true) { |
| 1286 | // Do not push the built-in topic publications. |
| 1287 | continue; |
| 1288 | } |
| 1289 | |
| 1290 | // Initialize the participant on the peer. |
| 1291 | ParticipantUpdate participantSample; |
| 1292 | participantSample.sender = this->id().id(); |
| 1293 | participantSample.action = CreateEntity; |
| 1294 | |
| 1295 | participantSample.owner = currentParticipant->second->owner(); |
| 1296 | participantSample.domain = currentDomain->second->get_id(); |
| 1297 | participantSample.id = currentParticipant->second->get_id(); |
| 1298 | participantSample.qos = *currentParticipant->second->get_qos(); |
| 1299 | |
| 1300 | peer->initializeParticipant(participantSample); |
| 1301 | |
| 1302 | // Initialize the ownership of the participant on the peer. |
| 1303 | OwnerUpdate ownerSample; |
| 1304 | ownerSample.sender = this->id().id(); |
| 1305 | ownerSample.action = CreateEntity; |
| 1306 | |
| 1307 | ownerSample.domain = currentDomain->second->get_id(); |
| 1308 | ownerSample.participant = currentParticipant->second->get_id(); |
| 1309 | ownerSample.owner = currentParticipant->second->owner(); |
| 1310 |
no test coverage detected