net.i2p.router.peermanager
Class PeerManager

java.lang.Object
  extended by net.i2p.router.peermanager.PeerManager

 class PeerManager
extends java.lang.Object

Manage the current state of the statistics All the capabilities methods appear to be almost unused - TunnelPeerSelector just looks for unreachables, and that's it? If so, a lot of this can go away, including the array of 26 ArrayLists, and a lot of synchronization on _capabilitiesByPeer. We don't trust any published capabilities except for 'K' and 'U'. This should be cleaned up. setCapabilities() and removeCapabilities() can just add/remove the profile and that's it.


Constructor Summary
PeerManager(RouterContext context)
           
 
Method Summary
 java.util.List<Hash> getPeersByCapability(char capability)
          The only user of this is TunnelPeerSelector for unreachables?
(package private)  void loadProfiles()
           
 void removeCapabilities(Hash peer)
           
(package private)  java.util.Set selectPeers()
           
(package private)  java.util.List<Hash> selectPeers(PeerSelectionCriteria criteria)
          Find some peers that meet the criteria and we have the netDb info for locally Only used by PeerTestJob (PURPOSE_TEST)
 void setCapabilities(Hash peer, java.lang.String caps)
           
(package private)  void storeProfile(Hash peer)
           
(package private)  void storeProfiles()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PeerManager

public PeerManager(RouterContext context)
Method Detail

storeProfiles

void storeProfiles()

selectPeers

java.util.Set selectPeers()

storeProfile

void storeProfile(Hash peer)

loadProfiles

void loadProfiles()

selectPeers

java.util.List<Hash> selectPeers(PeerSelectionCriteria criteria)
Find some peers that meet the criteria and we have the netDb info for locally Only used by PeerTestJob (PURPOSE_TEST)


setCapabilities

public void setCapabilities(Hash peer,
                            java.lang.String caps)

removeCapabilities

public void removeCapabilities(Hash peer)

getPeersByCapability

public java.util.List<Hash> getPeersByCapability(char capability)
The only user of this is TunnelPeerSelector for unreachables?