PIDeque bugs fixed
git-svn-id: svn://db.shs.com.ru/pip@27 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5
This commit is contained in:
@@ -115,7 +115,7 @@ public:
|
||||
const PIVector<PIPeer::PeerInfo> & allPeers() const {return peers;}
|
||||
bool isPeerExists(const PIString & name) const {return getPeerByName(name) != 0;}
|
||||
|
||||
const PeerInfo * getPeerByName(const PIString & name) const {piForeachC (PeerInfo & i, peers) if (i.name == name) return &i; return 0;}
|
||||
const PeerInfo * getPeerByName(const PIString & name) const {return peers_map.value(name, 0);}
|
||||
const PeerInfo & selfInfo() const {return self_info;}
|
||||
const PIMap<PIString, PIVector<PeerInfo * > > & _peerMap() const {return addresses_map;}
|
||||
|
||||
@@ -145,7 +145,7 @@ private:
|
||||
void sendSelfInfo() {sendPeerInfo(self_info);}
|
||||
void sendSelfRemove() {sendPeerRemove(self_info.name);}
|
||||
void syncPeers();
|
||||
void findNearestAddresses();
|
||||
void buildMap();
|
||||
void initEths(PIStringList al);
|
||||
void initMBcasts(PIStringList al);
|
||||
void destroyMBcasts();
|
||||
@@ -170,6 +170,7 @@ private:
|
||||
|
||||
PeerInfo self_info;
|
||||
PIVector<PeerInfo> peers;
|
||||
PIMap<PIString, PeerInfo * > peers_map;
|
||||
PIMap<PIString, PIVector<PeerInfo * > > addresses_map; // map {"to" = list of nearest peers}
|
||||
PIMap<PIString, PIPair<int, PISystemTime> > removed;
|
||||
PIDiagnostics diag_s, diag_d;
|
||||
|
||||
Reference in New Issue
Block a user