Changeset 3037 for source/ariba/overlay/BaseOverlay.cpp
- Timestamp:
- Apr 22, 2009, 9:07:53 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
source/ariba/overlay/BaseOverlay.cpp
r2803 r3037 107 107 108 108 logging_info( "leaving spovnet " << spovnetId ); 109 bool ret = ( state != this->BaseOverlayStateInvalid ); 109 110 110 111 logging_debug( "dropping all auto-links ..." ); 111 112 112 113 BOOST_FOREACH( LinkPair item, linkMapping ){ 113 if( item.second.autolink ) 114 if( item.second.autolink ) 114 115 dropLink( item.first ); 115 116 } … … 135 136 // inform all registered services of the event 136 137 BOOST_FOREACH( ServiceInterface* i, listenerMux.getOneList() ){ 137 i->onOverlayDestroy( spovnetId ); 138 if( ret ) i->onLeaveSuccess( spovnetId ); 139 else i->onLeaveFail( spovnetId ); 138 140 } 139 141 } … … 159 161 160 162 // 161 // create the overlay162 //163 164 overlayInterface->createOverlay();165 BOOST_FOREACH( ServiceInterface* i, listenerMux.getOneList() ){166 i->onOverlayCreate( spovnetId );167 }168 169 //170 163 // bootstrap against ourselfs 171 164 // … … 286 279 node.toString() << " for service " << service.toString() << 287 280 ". creating auto link ..."); 288 281 289 282 const LinkID link = establishLink( node, service ); 290 283 LinkMapping::iterator i = linkMapping.find( link ); … … 328 321 ServiceInterface* iface = listenerMux.get( sid ); 329 322 listenerMux.unregisterItem( sid ); 330 323 331 324 return NULL; //iface; 332 325 } … … 385 378 " on link " << id.toString() ); 386 379 387 OverlayMsg overMsg( 388 OverlayMsg::OverlayMessageTypeUpdate, 389 i->second.service, 390 nodeId 380 OverlayMsg overMsg( 381 OverlayMsg::OverlayMessageTypeUpdate, 382 i->second.service, 383 nodeId 391 384 ); 392 385 … … 655 648 656 649 overlayInterface->createOverlay(); 657 658 // inform all registered services of the event659 BOOST_FOREACH( ServiceInterface* i, listenerMux.getOneList() ){660 i->onOverlayCreate( spovnetId );661 }662 663 650 overlayInterface->joinOverlay( replyMsg->getBootstrapEndpoint() ); 664 651 … … 765 752 // inform all registered services of the event 766 753 BOOST_FOREACH( ServiceInterface* i, listenerMux.getOneList() ){ 767 i->on OverlayDestroy( spovnetId );754 i->onLeaveFail( spovnetId ); 768 755 } 769 756 … … 815 802 sendMessage( message, *i, service ); // TODO: sollte auto links aufbauen fÃŒr sowas 816 803 } 804 } 805 806 vector<NodeID> BaseOverlay::getOverlayNeighbors() const { 807 // the known nodes _can_ also include our 808 // node, so we remove ourselfs 809 810 vector<NodeID> nodes = overlayInterface->getKnownNodes(); 811 vector<NodeID>::iterator i = find( nodes.begin(), nodes.end(), this->nodeId ); 812 if( i != nodes.end() ) nodes.erase( i ); 813 814 return nodes; 817 815 } 818 816
Note:
See TracChangeset
for help on using the changeset viewer.