diff --git a/router/java/src/net/i2p/router/PeerManagerFacade.java b/router/java/src/net/i2p/router/PeerManagerFacade.java index be86fca1b..6d4f43d0c 100644 --- a/router/java/src/net/i2p/router/PeerManagerFacade.java +++ b/router/java/src/net/i2p/router/PeerManagerFacade.java @@ -20,13 +20,6 @@ import net.i2p.data.Hash; * */ public interface PeerManagerFacade extends Service { - /** - * Select peers from the manager's existing routing tables according to - * the specified criteria. This call DOES block. - * - * @return List of Hash objects of the RouterIdentity for matching peers - */ - public List selectPeers(PeerSelectionCriteria criteria); public Set getPeersByCapability(char capability); public void setCapabilities(Hash peer, String caps); public void removeCapabilities(Hash peer); diff --git a/router/java/src/net/i2p/router/dummy/DummyPeerManagerFacade.java b/router/java/src/net/i2p/router/dummy/DummyPeerManagerFacade.java index 241a7fd84..5d908f3be 100644 --- a/router/java/src/net/i2p/router/dummy/DummyPeerManagerFacade.java +++ b/router/java/src/net/i2p/router/dummy/DummyPeerManagerFacade.java @@ -14,7 +14,6 @@ import java.util.Set; import net.i2p.data.Hash; import net.i2p.router.PeerManagerFacade; -import net.i2p.router.PeerSelectionCriteria; /** * Manage peer references and keep them up to date so that when asked for peers, @@ -27,7 +26,6 @@ public class DummyPeerManagerFacade implements PeerManagerFacade { public void startup() {} public void restart() {} public void renderStatusHTML(Writer out) { } - public List selectPeers(PeerSelectionCriteria criteria) { return null; } public Set getPeersByCapability(char capability) { return null; } public void setCapabilities(Hash peer, String caps) {} public void removeCapabilities(Hash peer) {} diff --git a/router/java/src/net/i2p/router/peermanager/PeerManager.java b/router/java/src/net/i2p/router/peermanager/PeerManager.java index 362c67b5a..4a04e8f20 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManager.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManager.java @@ -21,7 +21,6 @@ import java.util.concurrent.atomic.AtomicBoolean; import net.i2p.data.Hash; import net.i2p.data.router.RouterInfo; -import net.i2p.router.PeerSelectionCriteria; import net.i2p.router.Router; import net.i2p.router.RouterContext; import net.i2p.router.networkdb.kademlia.FloodfillNetworkDatabaseFacade; @@ -245,6 +244,7 @@ class PeerManager { //_organizer.selectNotFailingPeers(criteria.getMinimumRequired(), exclude, peers); _organizer.selectActiveNotFailingPeers(criteria.getMinimumRequired(), exclude, peers); break; +/**** case PeerSelectionCriteria.PURPOSE_TUNNEL: // pull all of the fast ones, regardless of how many we // want - we'll whittle them down later (40 lines from now) @@ -260,8 +260,9 @@ class PeerManager { case PeerSelectionCriteria.PURPOSE_GARLIC: _organizer.selectHighCapacityPeers(criteria.getMinimumRequired(), exclude, peers); break; +****/ default: - break; + throw new UnsupportedOperationException(); } if (peers.isEmpty()) { if (_log.shouldLog(Log.WARN)) diff --git a/router/java/src/net/i2p/router/peermanager/PeerManagerFacadeImpl.java b/router/java/src/net/i2p/router/peermanager/PeerManagerFacadeImpl.java index 30d697885..faa17595a 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManagerFacadeImpl.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManagerFacadeImpl.java @@ -16,7 +16,6 @@ import java.util.Set; import net.i2p.data.Hash; import net.i2p.router.PeerManagerFacade; -import net.i2p.router.PeerSelectionCriteria; import net.i2p.router.RouterContext; import net.i2p.util.Log; @@ -60,10 +59,6 @@ public class PeerManagerFacadeImpl implements PeerManagerFacade { _manager.loadProfiles(); } - public List selectPeers(PeerSelectionCriteria criteria) { - return _manager.selectPeers(criteria); - } - /** * @param caps non-null */ diff --git a/router/java/src/net/i2p/router/PeerSelectionCriteria.java b/router/java/src/net/i2p/router/peermanager/PeerSelectionCriteria.java similarity index 82% rename from router/java/src/net/i2p/router/PeerSelectionCriteria.java rename to router/java/src/net/i2p/router/peermanager/PeerSelectionCriteria.java index 2702ff5ec..993e5835c 100644 --- a/router/java/src/net/i2p/router/PeerSelectionCriteria.java +++ b/router/java/src/net/i2p/router/peermanager/PeerSelectionCriteria.java @@ -1,4 +1,4 @@ -package net.i2p.router; +package net.i2p.router.peermanager; /* * free (adj.): unencumbered; not under the control of others * Written by jrandom in 2003 and released into the public domain @@ -13,14 +13,16 @@ package net.i2p.router; * PeerManager * * Only used by PeerTestJob, which may not have a point. + * + * @since moved from router to peermanager in 0.9.40 */ -public class PeerSelectionCriteria { +class PeerSelectionCriteria { /** The peers will be used in a tunnel */ - public final static int PURPOSE_TUNNEL = 1; + //public final static int PURPOSE_TUNNEL = 1; /** The peers will be used for garlic routed messages */ - public final static int PURPOSE_GARLIC = 2; + //public final static int PURPOSE_GARLIC = 2; /** The peers will be used for a source routed reply block message */ - public final static int PURPOSE_SOURCE_ROUTE = 3; + //public final static int PURPOSE_SOURCE_ROUTE = 3; /** The peers will be used for a test message */ public final static int PURPOSE_TEST = 4; diff --git a/router/java/src/net/i2p/router/peermanager/PeerTestJob.java b/router/java/src/net/i2p/router/peermanager/PeerTestJob.java index ac1918808..8878eaa81 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerTestJob.java +++ b/router/java/src/net/i2p/router/peermanager/PeerTestJob.java @@ -12,7 +12,6 @@ import net.i2p.data.i2np.DeliveryStatusMessage; import net.i2p.data.i2np.I2NPMessage; import net.i2p.router.JobImpl; import net.i2p.router.MessageSelector; -import net.i2p.router.PeerSelectionCriteria; import net.i2p.router.ReplyJob; import net.i2p.router.RouterContext; import net.i2p.router.TunnelInfo; @@ -27,7 +26,7 @@ import net.i2p.util.Log; * TODO - What's the point? Disable this? See also notes in PeerManager.selectPeers(). * TODO - Use something besides sending the peer's RI to itself? */ -public class PeerTestJob extends JobImpl { +class PeerTestJob extends JobImpl { private final Log _log; private PeerManager _manager; private boolean _keepTesting; @@ -49,7 +48,6 @@ public class PeerTestJob extends JobImpl { /** number of peers to test each round */ private int getTestConcurrency() { return 1; } - // FIXME Exporting non-public type through public API FIXME public synchronized void startTesting(PeerManager manager) { _manager = manager; _keepTesting = true;