Package net.i2p.router.peermanager
Class PeerManager
- java.lang.Object
-
- net.i2p.router.peermanager.PeerManager
-
class PeerManager extends Object
Manage the current state of the statistics Also maintain Sets for each of the capabilities in TRACKED_CAPS.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) static int
REORGANIZES_PER_DAY
After first two hours of uptime ~= 246static String
TRACKED_CAPS
-
Constructor Summary
Constructors Constructor Description PeerManager(RouterContext context)
Profiles are now loaded in a separate thread, so this should return quickly.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
clearProfiles()
int
countPeersByCapability(char capability)
Set<Hash>
getPeersByCapability(char capability)
(package private) void
loadProfiles()
This may take a long time - 30 seconds or morevoid
removeCapabilities(Hash peer)
(package private) Set<Hash>
selectPeers()
(package private) List<Hash>
selectPeers(PeerSelectionCriteria criteria)
Find some peers that meet the criteria and we have the netDb info for locally.void
setCapabilities(Hash peer, String caps)
(package private) void
storeProfile(Hash peer)
(package private) void
storeProfiles()
-
-
-
Field Detail
-
REORGANIZES_PER_DAY
static final int REORGANIZES_PER_DAY
After first two hours of uptime ~= 246- See Also:
- Constant Field Values
-
TRACKED_CAPS
public static final String TRACKED_CAPS
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PeerManager
public PeerManager(RouterContext context)
Profiles are now loaded in a separate thread, so this should return quickly.
-
-
Method Detail
-
storeProfiles
void storeProfiles()
-
clearProfiles
void clearProfiles()
- Since:
- 0.8.8
-
storeProfile
void storeProfile(Hash peer)
-
loadProfiles
void loadProfiles()
This may take a long time - 30 seconds or more
-
selectPeers
List<Hash> selectPeers(PeerSelectionCriteria criteria)
Find some peers that meet the criteria and we have the netDb info for locally. Returned list will not include ourselves. Only used by PeerTestJob (PURPOSE_TEST)
-
setCapabilities
public void setCapabilities(Hash peer, String caps)
- Parameters:
caps
- non-null, case is ignored
-
removeCapabilities
public void removeCapabilities(Hash peer)
-
getPeersByCapability
public Set<Hash> getPeersByCapability(char capability)
- Parameters:
capability
- case-insensitive- Returns:
- non-null unmodifiable set
-
countPeersByCapability
public int countPeersByCapability(char capability)
- Parameters:
capability
- case-insensitive- Returns:
- how many
- Since:
- 0.9.45
-
-