diff --git a/android/src/net/i2p/router/I2PAndroid.java b/android/src/net/i2p/router/I2PAndroid.java index ed626639ceeee57d5ab0e08dbfa20c2dab7b252c..88d522dd632b00279f28caf8038f1817b715296e 100644 --- a/android/src/net/i2p/router/I2PAndroid.java +++ b/android/src/net/i2p/router/I2PAndroid.java @@ -69,7 +69,7 @@ public class I2PAndroid extends Activity // from routerconsole ContextHelper List contexts = RouterContext.listContexts(); - if ( (contexts == null) || (contexts.size() <= 0) ) + if ( (contexts == null) || (contexts.isEmpty()) ) throw new IllegalStateException("No contexts. This is usually because the router is either starting up or shutting down."); RouterContext ctx = (RouterContext)contexts.get(0); diff --git a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java index 9804da5d6620dd4ba254f6645c1cebb057b2adcd..35139420c2007741ef77b10340095c58cfc93d50 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java +++ b/apps/i2psnark/java/src/org/klomp/snark/I2PSnarkUtil.java @@ -355,7 +355,7 @@ public class I2PSnarkUtil { while (tok.hasMoreTokens()) rv.add(tok.nextToken()); - if (rv.size() <= 0) + if (rv.isEmpty()) return null; return rv; } diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionOut.java b/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionOut.java index 3326a60860427989f59cd9690277a4910c133802..81525a1ea82d2d7405f7ca60b824889a0fa0e6d2 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionOut.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerConnectionOut.java @@ -142,7 +142,7 @@ class PeerConnectionOut implements Runnable it.remove(); } } - if (m == null && sendQueue.size() > 0) { + if (m == null && !sendQueue.isEmpty()) { m = (Message)sendQueue.remove(0); SimpleTimer.getInstance().removeEvent(m.expireEvent); } diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java index af567efc34308143d264d3ecc2506a2784106838..c3070913eedfd41601309d730b53ab9e7ec41956 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java @@ -272,7 +272,7 @@ public class PeerCoordinator implements PeerListener peerCount = 0; } - while (removed.size() > 0) { + while (!removed.isEmpty()) { Peer peer = (Peer)removed.remove(0); peer.disconnect(); removePeerFromPieces(peer); @@ -428,7 +428,7 @@ public class PeerCoordinator implements PeerListener } } - while (uploaders < maxUploaders && interested.size() > 0) + while (uploaders < maxUploaders && !interested.isEmpty()) { Peer peer = (Peer)interested.remove(0); if (_log.shouldLog(Log.DEBUG)) diff --git a/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java b/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java index e5d553462f91041e07351fbb61d8f2d9fcfc579e..8822bba931af1eaa86ecacd4ea48b49e2bd426a1 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java +++ b/apps/i2psnark/java/src/org/klomp/snark/TrackerClient.java @@ -163,7 +163,7 @@ public class TrackerClient extends I2PAppThread } } - if (tlist.size() <= 0) { + if (tlist.isEmpty()) { // FIXME really need to get this message to the gui stop = true; _log.error("No valid trackers for infoHash: " + infoHash); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java index 8fc2970ad2c942c19408093c6fbdcf2d0b431eeb..89339bf04c3e320e1c4ae78ca171562780a29056 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java @@ -54,7 +54,7 @@ public class I2PTunnelClient extends I2PTunnelClientBase { } } - if (dests.size() <= 0) { + if (dests.isEmpty()) { l.log("No target destinations found"); notifyEvent("openClientResult", "error"); return; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java index b3ffcdb45e1cb15542a7af309357a3c1b70ac44b..398fd73495d336e6a3c78b70d102cbfd0c235b58 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClientBase.java @@ -641,7 +641,7 @@ public abstract class I2PTunnelClientBase extends I2PTunnelTask implements Runna while (open) { try { synchronized (_waitingSockets) { - if (_waitingSockets.size() <= 0) + if (_waitingSockets.isEmpty()) _waitingSockets.wait(); else s = (Socket)_waitingSockets.remove(0); diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java index fed00886e6f6f04a4b755c4a0b8535e300c8cc48..a7fbcf37b5a038b17deb4467753aa8f9dbcea26f 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java @@ -61,7 +61,7 @@ public class I2PTunnelIRCClient extends I2PTunnelClientBase implements Runnable } } - if (dests.size() <= 0) { + if (dests.isEmpty()) { l.log("No target destinations found"); notifyEvent("openClientResult", "error"); return; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelControllerGroup.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelControllerGroup.java index 4250dedd07da820cb25351fc6f94e0841a9990cc..112f0d62f06544973445ce97c2e37f023a4a9d5e 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelControllerGroup.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelControllerGroup.java @@ -329,7 +329,7 @@ public class TunnelControllerGroup { Set owners = (Set)_sessions.get(session); if (owners != null) { owners.remove(controller); - if (owners.size() <= 0) { + if (owners.isEmpty()) { if (_log.shouldLog(Log.INFO)) _log.info("After releasing session " + session + " by " + controller + ", no more owners remain"); shouldClose = true; diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java index ef88102cf08ed63ac18a9b67c4ca245e5abf219e..55feadf2189e8e004696355e2f54031bf3446fcc 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS4aServer.java @@ -224,7 +224,7 @@ public class SOCKS4aServer extends SOCKSServer { throw new SOCKSException(err); } else { List<String> proxies = t.getProxies(connPort); - if (proxies == null || proxies.size() <= 0) { + if (proxies == null || proxies.isEmpty()) { String err = "No outproxy configured for port " + connPort + " and no default configured either - host: " + connHostName; _log.error(err); try { diff --git a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java index 103f6a945485845357b57c6d1b483c91f5a9ec01..c87a320dd3c17cbdbfd4fce37f7424bad303d621 100644 --- a/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java +++ b/apps/i2ptunnel/java/src/net/i2p/i2ptunnel/socks/SOCKS5Server.java @@ -332,7 +332,7 @@ public class SOCKS5Server extends SOCKSServer { throw new SOCKSException(err); } else { List<String> proxies = t.getProxies(connPort); - if (proxies == null || proxies.size() <= 0) { + if (proxies == null || proxies.isEmpty()) { String err = "No outproxy configured for port " + connPort + " and no default configured either"; _log.error(err); try { diff --git a/apps/jetty/java/src/org/mortbay/http/HttpContext.java b/apps/jetty/java/src/org/mortbay/http/HttpContext.java index 061d3ad17f971f853ebc3216bef59952bbcbc329..1ae1a08b6ef6748736519fd16afab4819b43e9f5 100644 --- a/apps/jetty/java/src/org/mortbay/http/HttpContext.java +++ b/apps/jetty/java/src/org/mortbay/http/HttpContext.java @@ -1301,7 +1301,7 @@ public class HttpContext extends Container List scss= _constraintMap.getMatches(pathInContext); String pattern=null; - if (scss != null && scss.size() > 0) + if (scss != null && !scss.isEmpty()) { Object constraints= null; diff --git a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PServerSocketImpl.java b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PServerSocketImpl.java index 2e0609f5640a9c618ce614ffa016c6ee32ba40e0..c1378b3a13564d0f8465e6ad94da88e36fe1fa1c 100644 --- a/apps/ministreaming/java/src/net/i2p/client/streaming/I2PServerSocketImpl.java +++ b/apps/ministreaming/java/src/net/i2p/client/streaming/I2PServerSocketImpl.java @@ -69,7 +69,7 @@ class I2PServerSocketImpl implements I2PServerSocket { I2PSocket ret = null; while ( (ret == null) && (!closing) ){ - while (pendingSockets.size() <= 0) { + while (pendingSockets.isEmpty()) { if (closing) throw new ConnectException("I2PServerSocket closed"); try { synchronized(socketAddedLock) { @@ -78,7 +78,7 @@ class I2PServerSocketImpl implements I2PServerSocket { } catch (InterruptedException ie) {} } synchronized (pendingSockets) { - if (pendingSockets.size() > 0) { + if (!pendingSockets.isEmpty()) { ret = (I2PSocket)pendingSockets.remove(0); } } diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java index 6b172c156fc9d8818de2840dcba643d3c88a3f50..049b5a02a974c62cc17db955914775680783f494 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigClientsHelper.java @@ -88,7 +88,7 @@ public class ConfigClientsHelper extends HelperBase { String app = name.substring(PluginStarter.PREFIX.length(), name.lastIndexOf(PluginStarter.ENABLED)); String val = props.getProperty(name); Properties appProps = PluginStarter.pluginProperties(_context, app); - if (appProps.size() <= 0) + if (appProps.isEmpty()) continue; StringBuilder desc = new StringBuilder(256); desc.append("<table border=\"0\">") diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigStatsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigStatsHelper.java index 5c22ed1b1e2530fad647976a6a38e63121566e9a..07c0f3e0f7d415f855561dc822c93977cb99d55b 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigStatsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigStatsHelper.java @@ -70,7 +70,7 @@ public class ConfigStatsHelper extends HelperBase { * @return true if a valid stat is available, otherwise false */ public boolean hasMoreStats() { - if (_stats.size() <= 0) + if (_stats.isEmpty()) return false; _currentIsGraphed = false; _currentStatName = (String)_stats.remove(0); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java index 2be5a4a00b5427a391aceae02241e96d5924c493..4d007e9d76162b5b9356ea4c05d91167da4d80ed 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigTunnelsHelper.java @@ -163,7 +163,7 @@ public class ConfigTunnelsHelper extends HelperBase { // TunnelPoolOptions, so make the boxes readonly. // And let's not display them at all unless they have contents, which should be rare. Properties props = in.getUnknownOptions(); - if (props.size() > 0) { + if (!props.isEmpty()) { buf.append("<tr><td align=\"right\" class=\"mediumtags\">" + _("Inbound options") + ":</td>\n" + "<td colspan=\"2\" align=\"center\"><input name=\"").append(index); buf.append(".inboundOptions\" type=\"text\" size=\"32\" disabled=\"true\" " + @@ -176,7 +176,7 @@ public class ConfigTunnelsHelper extends HelperBase { buf.append("\"></td></tr>\n"); } props = out.getUnknownOptions(); - if (props.size() > 0) { + if (!props.isEmpty()) { buf.append("<tr><td align=\"right\" class=\"mediumtags\">" + _("Outbound options") + ":</td>\n" + "<td colspan=\"2\" align=\"center\"><input name=\"").append(index); buf.append(".outboundOptions\" type=\"text\" size=\"32\" disabled=\"true\" " + diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ContextHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/ContextHelper.java index 0aa250654837e9ca144ca9fd79496ffb86e5e3b5..aab5a2ce9b044ed76ef6cb5eb2cbb7b6304500b1 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ContextHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ContextHelper.java @@ -6,9 +6,11 @@ import net.i2p.data.Hash; import net.i2p.router.RouterContext; class ContextHelper { + + /** @throws IllegalStateException if no context available */ public static RouterContext getContext(String contextId) { List contexts = RouterContext.listContexts(); - if ( (contexts == null) || (contexts.size() <= 0) ) + if ( (contexts == null) || (contexts.isEmpty()) ) throw new IllegalStateException("No contexts. This is usually because the router is either starting up or shutting down."); if ( (contextId == null) || (contextId.trim().length() <= 0) ) return (RouterContext)contexts.get(0); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java index effcca6bf02b0ca4c64e6a7e4f9d1d480e38f886..d360e346ebb7d781a84d6ae8a48dd5762d814e49 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NetDbRenderer.java @@ -185,7 +185,7 @@ public class NetDbRenderer { buf.append("<table border=\"0\" cellspacing=\"30\"><tr><th colspan=\"3\">").append(_("Network Database Router Statistics")).append("</th><tr><td>"); // versions table List<String> versionList = new ArrayList(versions.objects()); - if (versionList.size() > 0) { + if (!versionList.isEmpty()) { Collections.sort(versionList, Collections.reverseOrder(new VersionComparator())); buf.append("<table>\n"); buf.append("<tr><th>" + _("Version") + "</th><th>" + _("Count") + "</th></tr>\n"); @@ -217,7 +217,7 @@ public class NetDbRenderer { // country table List<String> countryList = new ArrayList(countries.objects()); - if (countryList.size() > 0) { + if (!countryList.isEmpty()) { Collections.sort(countryList, new CountryComparator()); buf.append("<table>\n"); buf.append("<tr><th align=\"left\">" + _("Country") + "</th><th>" + _("Count") + "</th></tr>\n"); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NewsFetcher.java b/apps/routerconsole/java/src/net/i2p/router/web/NewsFetcher.java index e5c0ef9a17f1fd2299df2b70b42f13e879213f65..f7ac8cb9421cbb23cbd63c12768c52c769ad1564 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/NewsFetcher.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/NewsFetcher.java @@ -322,7 +322,7 @@ public class NewsFetcher implements Runnable, EepGet.StatusListener { handler = new UpdateHandler((RouterContext)_context); } else { List contexts = RouterContext.listContexts(); - if (contexts.size() > 0) + if (!contexts.isEmpty()) handler = new UpdateHandler((RouterContext)contexts.get(0)); else _log.log(Log.CRIT, "No router context to update with?"); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ShitlistRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/ShitlistRenderer.java index b1e3ccf30253f15e7a7c40a13832939c2aa93141..48af67857a049dd109af3a45585371cc73f4c045 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ShitlistRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ShitlistRenderer.java @@ -58,7 +58,7 @@ public class ShitlistRenderer { else buf.append(_("Banned until restart or in {0}", expireString)); Set transports = entry.transports; - if ( (transports != null) && (transports.size() > 0) ) + if ( (transports != null) && (!transports.isEmpty()) ) buf.append(" on the following transport: ").append(transports); if (entry.cause != null) { buf.append("<br>\n"); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java index e7054ccd99bdd3b7c8fdf930ff18bb40b4098f73..1e61bde4fbeb7ecf3d56b2d58958c07af8c1398b 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryHelper.java @@ -373,7 +373,7 @@ public class SummaryHelper extends HelperBase { StringBuilder buf = new StringBuilder(512); buf.append("<h3><a href=\"/i2ptunnel/index.jsp\" target=\"_blank\" title=\"").append(_("Add/remove/edit & control your client and server tunnels")).append("\">").append(_("Local Destinations")).append("</a></h3><hr><div class=\"tunnels\">"); - if (clients.size() > 0) { + if (!clients.isEmpty()) { Collections.sort(clients, new AlphaComparator()); buf.append("<table>"); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java index 101160d41cb2b90fe79d8c4cc33203bf9271ac01..da5305ef0dcd2d97db359cd86da032e01a87d78f 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/TunnelRenderer.java @@ -201,15 +201,17 @@ public class TunnelRenderer { out.write("</table>\n"); if (in != null) { List pending = in.listPending(); - if (pending.size() > 0) + if (!pending.isEmpty()) { out.write("<div class=\"statusnotes\"><center><b>" + _("Build in progress") + ": " + pending.size() + " " + _("inbound") + "</b></center></div>\n"); - live += pending.size(); + live += pending.size(); + } } if (outPool != null) { List pending = outPool.listPending(); - if (pending.size() > 0) + if (!pending.isEmpty()) { out.write("<div class=\"statusnotes\"><center><b>" + _("Build in progress") + ": " + pending.size() + " " + _("outbound") + "</b></center></div>\n"); - live += pending.size(); + live += pending.size(); + } } if (live <= 0) out.write("<div class=\"statusnotes\"><center><b>" + _("No tunnels; waiting for the grace period to end.") + "</center></b></div>\n"); diff --git a/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java index aef2802bd867f9d2ec4f41ec6dd98998ff2f0d26..20d4cacf78edbc8f977f8f14ec66c2ba004c333e 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMStreamSession.java @@ -739,7 +739,7 @@ public class SAMStreamSession { data = null; try { synchronized (_data) { - if (_data.size() > 0) { + if (!_data.isEmpty()) { data = (ByteArray)_data.remove(0); } else if (_shuttingDownGracefully) { /* No data left and shutting down gracefully? diff --git a/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java b/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java index a44c905430768e70d06c00af3d06385f813d33bd..487f8fdf1fd5a9484ba86247e16f880ba1e2621c 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv1Handler.java @@ -308,7 +308,7 @@ public class SAMv1Handler extends SAMHandler implements SAMRawReceiver, SAMDatag protected boolean execDestMessage(String opcode, Properties props) { if (opcode.equals("GENERATE")) { - if (props.size() > 0) { + if (!props.isEmpty()) { _log.debug("Properties specified in DEST GENERATE message"); return false; } diff --git a/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java index 4197597eb0d56e9f26bcd1cbab60b2669916786b..6b59435d31d87a4220daf7dccbf6b0250c51e319 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv2StreamSession.java @@ -371,7 +371,7 @@ public class SAMv2StreamSession extends SAMStreamSession { synchronized ( _data ) { - if ( _data.size() > 0 ) + if ( !_data.isEmpty() ) { int formerSize = _dataSize ; data = ( ByteArray ) _data.remove ( 0 ); diff --git a/apps/streaming/java/src/net/i2p/client/streaming/Connection.java b/apps/streaming/java/src/net/i2p/client/streaming/Connection.java index 2cc1a0cf1f463859b68c8f40720b69b7b3232da9..bc8c923699cf61f225625981264630d36dd046e8 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/Connection.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/Connection.java @@ -449,7 +449,7 @@ public class Connection { } _outboundPackets.notifyAll(); } - if ((acked != null) && (acked.size() > 0) ) + if ((acked != null) && (!acked.isEmpty()) ) _ackSinceCongestion = true; return acked; } diff --git a/apps/streaming/java/src/net/i2p/client/streaming/ConnectionPacketHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/ConnectionPacketHandler.java index 5292b5f09f6ef29a53fe2d1954738469fef41afa..e4a8efbc06209088e9843ba0a7af3c35cdca8ca8 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/ConnectionPacketHandler.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/ConnectionPacketHandler.java @@ -253,7 +253,7 @@ public class ConnectionPacketHandler { else return false; - if ( (acked != null) && (acked.size() > 0) ) { + if ( (acked != null) && (!acked.isEmpty()) ) { if (_log.shouldLog(Log.DEBUG)) _log.debug(acked.size() + " of our packets acked with " + packet); // use the highest RTT, since these would likely be bunched together, diff --git a/apps/streaming/java/src/net/i2p/client/streaming/MessageInputStream.java b/apps/streaming/java/src/net/i2p/client/streaming/MessageInputStream.java index 38537bc7f37189c55104f4208a74e7839053dc1f..14b304b2688dfcb0e00b7d75f703476294c199d0 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/MessageInputStream.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/MessageInputStream.java @@ -283,15 +283,15 @@ public class MessageInputStream extends InputStream { expiration = _readTimeout + System.currentTimeMillis(); synchronized (_dataLock) { for (int i = 0; i < length; i++) { - if ( (_readyDataBlocks.size() <= 0) && (i == 0) ) { + if ( (_readyDataBlocks.isEmpty()) && (i == 0) ) { // ok, we havent found anything, so lets block until we get // at least one byte - while (_readyDataBlocks.size() <= 0) { + while (_readyDataBlocks.isEmpty()) { if (_locallyClosed) throw new IOException("Already closed, you wanker"); - if ( (_notYetReadyBlocks.size() <= 0) && (_closeReceived) ) { + if ( (_notYetReadyBlocks.isEmpty()) && (_closeReceived) ) { if (_log.shouldLog(Log.INFO)) _log.info("read(...," + offset + ", " + length + ")[" + i + "] got EOF after " + _readTotal + " " + toString()); @@ -322,7 +322,7 @@ public class MessageInputStream extends InputStream { + ") with nonblocking setup: " + toString()); return i; } - if (_readyDataBlocks.size() <= 0) { + if (_readyDataBlocks.isEmpty()) { if ( (_readTimeout > 0) && (expiration < System.currentTimeMillis()) ) { if (_log.shouldLog(Log.INFO)) _log.info("read(...," + offset+", " + length+ ")[" + i @@ -334,7 +334,7 @@ public class MessageInputStream extends InputStream { } // we looped a few times then got data, so this pass doesnt count i--; - } else if (_readyDataBlocks.size() <= 0) { + } else if (_readyDataBlocks.isEmpty()) { if (_log.shouldLog(Log.DEBUG)) _log.debug("read(...," + offset+", " + length+ ")[" + i + "] no more ready blocks, returning"); diff --git a/apps/streaming/java/src/net/i2p/client/streaming/PacketLocal.java b/apps/streaming/java/src/net/i2p/client/streaming/PacketLocal.java index 3f856ac73d7b61295c0c9268b9ec5da8e9467087..674ff6179c531fcede87686b12d46b18a5f90823 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/PacketLocal.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/PacketLocal.java @@ -70,9 +70,9 @@ public class PacketLocal extends Packet implements MessageOutputStream.WriteStat * @deprecated I2PSession throws out the tags */ public void setTagsSent(Set tags) { - if (tags != null && tags.size() > 0) + if (tags != null && !tags.isEmpty()) _log.error("Who is sending tags thru the streaming lib? " + tags.size()); - if ( (_tagsSent != null) && (_tagsSent.size() > 0) && (tags.size() > 0) ) { + if ( (_tagsSent != null) && (!_tagsSent.isEmpty()) && (!tags.isEmpty()) ) { //int old = _tagsSent.size(); //_tagsSent.addAll(tags); if (!_tagsSent.equals(tags)) @@ -160,7 +160,7 @@ public class PacketLocal extends Packet implements MessageOutputStream.WriteStat if (con != null) buf.append(" rtt ").append(con.getOptions().getRTT()); - if ( (_tagsSent != null) && (_tagsSent.size() > 0) ) + if ( (_tagsSent != null) && (!_tagsSent.isEmpty()) ) buf.append(" with tags"); if (_ackOn > 0) diff --git a/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java b/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java index ce53d99d45be40a0a6feefa79654221a7176acc4..443293886fd1eabf3b474b9c9774b5e89d40ffac 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java @@ -73,7 +73,7 @@ public class AddressbookBean } public boolean isNotEmpty() { - return addressbook != null && addressbook.size() > 0; + return addressbook != null && !addressbook.isEmpty(); } public AddressbookBean() { @@ -89,7 +89,7 @@ public class AddressbookBean { long currentTime = System.currentTimeMillis(); - if( properties.size() > 0 && currentTime - configLastLoaded < 10000 ) + if( !properties.isEmpty() && currentTime - configLastLoaded < 10000 ) return; FileInputStream fis = null; diff --git a/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java b/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java index cc983b54bf0c78ae105eae908304fb4abf54c047..6b1a80576999b83406f5de862d881755b6d3f92a 100644 --- a/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java +++ b/apps/susidns/src/java/src/i2p/susi/dns/SubscriptionsBean.java @@ -49,7 +49,7 @@ public class SubscriptionsBean { long currentTime = System.currentTimeMillis(); - if( properties.size() > 0 && currentTime - configLastLoaded < 10000 ) + if( !properties.isEmpty() && currentTime - configLastLoaded < 10000 ) return; FileInputStream fis = null; diff --git a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java index e871dfe817228e133c49af9ddcc350bac9252ee5..3771d02422523841624009a964e060929ebd090c 100644 --- a/apps/susimail/src/src/i2p/susi/webmail/WebMail.java +++ b/apps/susimail/src/src/i2p/susi/webmail/WebMail.java @@ -1411,7 +1411,7 @@ public class WebMail extends HttpServlet if( bccToSelf != null && bccToSelf.compareTo( "1" ) == 0 ) recipients.add( sender ); - if( recipients.size() == 0 ) { + if( recipients.isEmpty() ) { ok = false; sessionObject.error += "No recipients found.<br>"; } @@ -1442,7 +1442,7 @@ public class WebMail extends HttpServlet } String boundary = "_="+(int)(Math.random()*Integer.MAX_VALUE)+""+(int)(Math.random()*Integer.MAX_VALUE); boolean multipart = false; - if( sessionObject.attachments != null && sessionObject.attachments.size() > 0 ) { + if( sessionObject.attachments != null && !sessionObject.attachments.isEmpty() ) { multipart = true; body.append( "\r\nMIME-Version: 1.0\r\nContent-type: multipart/mixed; boundary=\"" + boundary + "\"\r\n\r\n" ); } @@ -1515,7 +1515,7 @@ public class WebMail extends HttpServlet { out.println( button( SEND, "Send" ) + button( CANCEL, "Cancel" ) + spacer + - (sessionObject.attachments != null && sessionObject.attachments.size() > 0 ? button( DELETE_ATTACHMENT, "Delete Attachment" ) : button2( DELETE_ATTACHMENT, "Delete Attachment" ) ) + spacer + + (sessionObject.attachments != null && (!sessionObject.attachments.isEmpty()) ? button( DELETE_ATTACHMENT, "Delete Attachment" ) : button2( DELETE_ATTACHMENT, "Delete Attachment" ) ) + spacer + button( RELOAD, "Reload Config" ) + spacer + button( LOGOUT, "Logout" ) ); @@ -1550,7 +1550,7 @@ public class WebMail extends HttpServlet "<tr><td colspan=\"2\" align=\"center\"><hr></td></tr>\n" + "<tr><td align=\"right\">New Attachment:</td><td align=\"left\"><input type=\"file\" size=\"50%\" name=\"" + NEW_FILENAME + "\" value=\"\"><input type=\"submit\" name=\"" + NEW_UPLOAD + "\" value=\"Upload File\"></td></tr>" ); - if( sessionObject.attachments != null && sessionObject.attachments.size() > 0 ) { + if( sessionObject.attachments != null && !sessionObject.attachments.isEmpty() ) { boolean wroteHeader = false; for( Iterator it = sessionObject.attachments.iterator(); it.hasNext(); ) { if( !wroteHeader ) { diff --git a/core/java/src/net/i2p/client/I2PSessionImpl.java b/core/java/src/net/i2p/client/I2PSessionImpl.java index e4ee1c290dbab56980f6f9cb857d44c9b9086e9c..285aaa780bfd98c2dd369e13b2ee90ff999ece16 100644 --- a/core/java/src/net/i2p/client/I2PSessionImpl.java +++ b/core/java/src/net/i2p/client/I2PSessionImpl.java @@ -451,13 +451,13 @@ abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2CPMessa Long msgId = null; Integer size = null; synchronized (AvailabilityNotifier.this) { - if (_pendingIds.size() <= 0) { + if (_pendingIds.isEmpty()) { try { AvailabilityNotifier.this.wait(); } catch (InterruptedException ie) { // nop } } - if (_pendingIds.size() > 0) { + if (!_pendingIds.isEmpty()) { msgId = (Long)_pendingIds.remove(0); size = (Integer)_pendingSizes.remove(0); } diff --git a/core/java/src/net/i2p/client/I2PSessionImpl2.java b/core/java/src/net/i2p/client/I2PSessionImpl2.java index ac61ee703084e6504ba4982311c4c83181a34830..d8d8c8dfce202f8dd09c4dc37b1b4a6f42f0521d 100644 --- a/core/java/src/net/i2p/client/I2PSessionImpl2.java +++ b/core/java/src/net/i2p/client/I2PSessionImpl2.java @@ -236,7 +236,7 @@ class I2PSessionImpl2 extends I2PSessionImpl { oldTags = _context.sessionKeyManager().getAvailableTags(dest.getPublicKey(), key); long availTimeLeft = _context.sessionKeyManager().getAvailableTimeLeft(dest.getPublicKey(), key); - if ( (tagsSent == null) || (tagsSent.size() <= 0) ) { + if ( (tagsSent == null) || (tagsSent.isEmpty()) ) { if (oldTags < NUM_TAGS) { sentTags = createNewTags(NUM_TAGS); if (_log.shouldLog(Log.DEBUG)) @@ -261,7 +261,7 @@ class I2PSessionImpl2 extends I2PSessionImpl { if (false) // rekey newKey = _context.keyGenerator().generateSessionKey(); - if ( (tagsSent != null) && (tagsSent.size() > 0) ) { + if ( (tagsSent != null) && (!tagsSent.isEmpty()) ) { if (sentTags == null) sentTags = new HashSet(); sentTags.addAll(tagsSent); diff --git a/core/java/src/net/i2p/client/naming/EepGetNamingService.java b/core/java/src/net/i2p/client/naming/EepGetNamingService.java index 8ddeaa2480d1cfce62274853ac0b52beb282e774..d8331796712770adeacfe73592675b7f85277f83 100644 --- a/core/java/src/net/i2p/client/naming/EepGetNamingService.java +++ b/core/java/src/net/i2p/client/naming/EepGetNamingService.java @@ -72,7 +72,7 @@ public class EepGetNamingService extends NamingService { return d; List URLs = getURLs(); - if (URLs.size() == 0) + if (URLs.isEmpty()) return null; // prevent lookup loops - this cannot be the only lookup service diff --git a/core/java/src/net/i2p/crypto/CryptixAESKeyCache.java b/core/java/src/net/i2p/crypto/CryptixAESKeyCache.java index 6231261d3b8a6f235b8070a68f3d32dd808fdf10..5084ae2b0a836d7d2c3e9416da754451e0fceacb 100644 --- a/core/java/src/net/i2p/crypto/CryptixAESKeyCache.java +++ b/core/java/src/net/i2p/crypto/CryptixAESKeyCache.java @@ -31,7 +31,7 @@ public final class CryptixAESKeyCache { */ public final KeyCacheEntry acquireKey() { synchronized (_availableKeys) { - if (_availableKeys.size() > 0) + if (!_availableKeys.isEmpty()) return (KeyCacheEntry)_availableKeys.remove(0); } return createNew(); diff --git a/core/java/src/net/i2p/crypto/DHSessionKeyBuilder.java b/core/java/src/net/i2p/crypto/DHSessionKeyBuilder.java index d51e2366c1998b8802889259c4c9e7a8b227cfd7..2c1e57d8e5795d52a3ddfe05de1085f89ff23b7a 100644 --- a/core/java/src/net/i2p/crypto/DHSessionKeyBuilder.java +++ b/core/java/src/net/i2p/crypto/DHSessionKeyBuilder.java @@ -114,7 +114,7 @@ public class DHSessionKeyBuilder { this(false); DHSessionKeyBuilder builder = null; synchronized (_builders) { - if (_builders.size() > 0) { + if (!_builders.isEmpty()) { builder = (DHSessionKeyBuilder) _builders.remove(0); if (_log.shouldLog(Log.DEBUG)) _log.debug("Removing a builder. # left = " + _builders.size()); } else { diff --git a/core/java/src/net/i2p/crypto/ElGamalAESEngine.java b/core/java/src/net/i2p/crypto/ElGamalAESEngine.java index 047b0156ef1159210f9495ef9661c6b7c3f07b90..820a57c672e7243476d1816f5f2e979703418e4c 100644 --- a/core/java/src/net/i2p/crypto/ElGamalAESEngine.java +++ b/core/java/src/net/i2p/crypto/ElGamalAESEngine.java @@ -104,7 +104,7 @@ public class ElGamalAESEngine { decrypted = decryptExistingSession(data, key, targetPrivateKey, foundTags, usedKey, foundKey); if (decrypted != null) { _context.statManager().updateFrequency("crypto.elGamalAES.decryptExistingSession"); - if ( (foundTags.size() > 0) && (_log.shouldLog(Log.DEBUG)) ) + if ( (!foundTags.isEmpty()) && (_log.shouldLog(Log.DEBUG)) ) _log.debug(id + ": ElG/AES decrypt success with " + st + ": found tags: " + foundTags); wasExisting = true; } else { @@ -118,7 +118,7 @@ public class ElGamalAESEngine { decrypted = decryptNewSession(data, targetPrivateKey, foundTags, usedKey, foundKey); if (decrypted != null) { _context.statManager().updateFrequency("crypto.elGamalAES.decryptNewSession"); - if ( (foundTags.size() > 0) && (_log.shouldLog(Log.DEBUG)) ) + if ( (!foundTags.isEmpty()) && (_log.shouldLog(Log.DEBUG)) ) _log.debug("ElG decrypt success: found tags: " + foundTags); } else { _context.statManager().updateFrequency("crypto.elGamalAES.decryptFailed"); @@ -131,7 +131,7 @@ public class ElGamalAESEngine { //_log.debug("Unable to decrypt the data starting with tag [" + st + "] - did the tag expire recently?", new Exception("Decrypt failure")); } - if (foundTags.size() > 0) { + if (!foundTags.isEmpty()) { if (foundKey.getData() != null) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Found key: " + foundKey.toBase64() + " tags: " + foundTags + " wasExisting? " + wasExisting); diff --git a/core/java/src/net/i2p/crypto/HMAC256Generator.java b/core/java/src/net/i2p/crypto/HMAC256Generator.java index e84489d97173337d30dcdf92a26c85ac23c47067..bf053210942f9e29025fd28889d13d01fcff16aa 100644 --- a/core/java/src/net/i2p/crypto/HMAC256Generator.java +++ b/core/java/src/net/i2p/crypto/HMAC256Generator.java @@ -22,7 +22,7 @@ public class HMAC256Generator extends HMACGenerator { @Override protected I2PHMac acquire() { synchronized (_available) { - if (_available.size() > 0) + if (!_available.isEmpty()) return (I2PHMac)_available.remove(0); } // the HMAC is hardcoded to use SHA256 digest size diff --git a/core/java/src/net/i2p/crypto/HMACGenerator.java b/core/java/src/net/i2p/crypto/HMACGenerator.java index 9bf06aa70e32f83391daa70aa755b57e55928bcf..aed444ed06118259ac253745cdc4d715510e0ed5 100644 --- a/core/java/src/net/i2p/crypto/HMACGenerator.java +++ b/core/java/src/net/i2p/crypto/HMACGenerator.java @@ -89,7 +89,7 @@ public class HMACGenerator { protected I2PHMac acquire() { synchronized (_available) { - if (_available.size() > 0) + if (!_available.isEmpty()) return (I2PHMac)_available.remove(0); } // the HMAC is hardcoded to use SHA256 digest size @@ -108,7 +108,7 @@ public class HMACGenerator { private byte[] acquireTmp() { byte rv[] = null; synchronized (_availableTmp) { - if (_availableTmp.size() > 0) + if (!_availableTmp.isEmpty()) rv = (byte[])_availableTmp.remove(0); } if (rv != null) diff --git a/core/java/src/net/i2p/crypto/SHA256Generator.java b/core/java/src/net/i2p/crypto/SHA256Generator.java index e34f4fe914fe49e8e408cf317e16c9dd2aaeb1ed..d24915ed54da17088281d08d67dd75447128d5ea 100644 --- a/core/java/src/net/i2p/crypto/SHA256Generator.java +++ b/core/java/src/net/i2p/crypto/SHA256Generator.java @@ -52,7 +52,7 @@ public final class SHA256Generator { private Sha256Standalone acquireGnu() { Sha256Standalone rv = null; synchronized (_digestsGnu) { - if (_digestsGnu.size() > 0) + if (!_digestsGnu.isEmpty()) rv = (Sha256Standalone)_digestsGnu.remove(0); } if (rv != null) diff --git a/core/java/src/net/i2p/crypto/TransientSessionKeyManager.java b/core/java/src/net/i2p/crypto/TransientSessionKeyManager.java index 17543b1bd8cd7c0b305f3dd2ffb32d4e1cfcaf02..bd68f1f54b6bdb78fc295a3d8da2a2dfc453fe9a 100644 --- a/core/java/src/net/i2p/crypto/TransientSessionKeyManager.java +++ b/core/java/src/net/i2p/crypto/TransientSessionKeyManager.java @@ -307,7 +307,7 @@ public class TransientSessionKeyManager extends SessionKeyManager { public TagSetHandle tagsDelivered(PublicKey target, SessionKey key, Set<SessionTag> sessionTags) { if (_log.shouldLog(Log.DEBUG)) { //_log.debug("Tags delivered to set " + set + " on session " + sess); - if (sessionTags.size() > 0) + if (!sessionTags.isEmpty()) _log.debug("Tags delivered: " + sessionTags.size() + " for key: " + key + ": " + sessionTags); } OutboundSession sess = getSession(target); @@ -415,7 +415,7 @@ public class TransientSessionKeyManager extends SessionKeyManager { if (overage > 0) clearExcess(overage); - if ( (sessionTags.size() <= 0) && (_log.shouldLog(Log.DEBUG)) ) + if ( (sessionTags.isEmpty()) && (_log.shouldLog(Log.DEBUG)) ) _log.debug("Received 0 tags for key " + key); //if (false) aggressiveExpire(); } @@ -785,7 +785,7 @@ public class TransientSessionKeyManager extends SessionKeyManager { long now = _context.clock().now(); _lastUsed = now; synchronized (_tagSets) { - while (_tagSets.size() > 0) { + while (!_tagSets.isEmpty()) { TagSet set = _tagSets.get(0); if (set.getDate() + SESSION_TAG_DURATION_MS > now) { SessionTag tag = set.consumeNext(); @@ -830,7 +830,7 @@ public class TransientSessionKeyManager extends SessionKeyManager { synchronized (_tagSets) { for (Iterator<TagSet> iter = _tagSets.iterator(); iter.hasNext();) { TagSet set = iter.next(); - if ( (set.getDate() > last) && (set.getTags().size() > 0) ) + if ( (set.getDate() > last) && (!set.getTags().isEmpty()) ) last = set.getDate(); } } diff --git a/core/java/src/net/i2p/crypto/YKGenerator.java b/core/java/src/net/i2p/crypto/YKGenerator.java index cc69fb5d8fedaed8dc488c6269da5f3c6164649b..ad68ebec1fd56a2c2e78c6c18b383f9deadb89c4 100644 --- a/core/java/src/net/i2p/crypto/YKGenerator.java +++ b/core/java/src/net/i2p/crypto/YKGenerator.java @@ -110,7 +110,7 @@ class YKGenerator { public static BigInteger[] getNextYK() { if (true) { synchronized (_values) { - if (_values.size() > 0) { + if (!_values.isEmpty()) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Sufficient precalculated YK values - fetch the existing"); return (BigInteger[]) _values.remove(0); diff --git a/core/java/src/net/i2p/data/LeaseSet.java b/core/java/src/net/i2p/data/LeaseSet.java index 4598a27ff9059b2f6105fc43951c604e0edc4b79..a917f6ac0536e8656c8f5b1ffeded5e899c20c6b 100644 --- a/core/java/src/net/i2p/data/LeaseSet.java +++ b/core/java/src/net/i2p/data/LeaseSet.java @@ -201,7 +201,7 @@ public class LeaseSet extends DataStructureImpl { * @return earliest end date of any lease in the set, or -1 if there are no leases */ public long getEarliestLeaseDate() { - if (_leases.size() <= 0) + if (_leases.isEmpty()) return -1; return _firstExpiration; } diff --git a/core/java/src/net/i2p/stat/BufferedStatLog.java b/core/java/src/net/i2p/stat/BufferedStatLog.java index 4703a257605103b26aa756b73eb62a36a0d9a661..fc7b85c3f55bcb6b02ef6e2f43c540c588c79fbc 100644 --- a/core/java/src/net/i2p/stat/BufferedStatLog.java +++ b/core/java/src/net/i2p/stat/BufferedStatLog.java @@ -94,7 +94,7 @@ public class BufferedStatLog implements StatLog { _statFilters.clear(); while (tok.hasMoreTokens()) _statFilters.add(tok.nextToken().trim()); - _filtersSpecified = _statFilters.size() > 0; + _filtersSpecified = !_statFilters.isEmpty(); } } _lastFilters = val; diff --git a/core/java/src/net/i2p/util/Executor.java b/core/java/src/net/i2p/util/Executor.java index 5fa26ec744078922511bb0422771366632a87e99..8092d7ac447ee98f152306101d59e925fb18baf6 100644 --- a/core/java/src/net/i2p/util/Executor.java +++ b/core/java/src/net/i2p/util/Executor.java @@ -20,9 +20,9 @@ class Executor implements Runnable { while(runn.getAnswer()) { SimpleTimer.TimedEvent evt = null; synchronized (_readyEvents) { - if (_readyEvents.size() <= 0) + if (_readyEvents.isEmpty()) try { _readyEvents.wait(); } catch (InterruptedException ie) {} - if (_readyEvents.size() > 0) + if (!_readyEvents.isEmpty()) evt = (SimpleTimer.TimedEvent)_readyEvents.remove(0); } diff --git a/core/java/src/net/i2p/util/SimpleTimer.java b/core/java/src/net/i2p/util/SimpleTimer.java index cf8e7e34b4a6ab31e7b5a3c4fe2f4eb453345509..6a8b855e305f3cfc892c78c4306de871c1346e73 100644 --- a/core/java/src/net/i2p/util/SimpleTimer.java +++ b/core/java/src/net/i2p/util/SimpleTimer.java @@ -180,7 +180,7 @@ public class SimpleTimer { long nextEventDelay = -1; Object nextEvent = null; while(runn.getAnswer()) { - if(_events.size() <= 0) { + if(_events.isEmpty()) { break; } Long when = (Long)_events.firstKey(); @@ -196,7 +196,7 @@ public class SimpleTimer { break; } } - if (eventsToFire.size() <= 0) { + if (eventsToFire.isEmpty()) { if (nextEventDelay != -1) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Next event in " + nextEventDelay + ": " + nextEvent); diff --git a/core/java/src/org/bouncycastle/crypto/macs/I2PHMac.java b/core/java/src/org/bouncycastle/crypto/macs/I2PHMac.java index a566e8a79936b52bfe131e9d55478d15f5465d32..125583613589391c50b042b8fc489d5762f9a790 100644 --- a/core/java/src/org/bouncycastle/crypto/macs/I2PHMac.java +++ b/core/java/src/org/bouncycastle/crypto/macs/I2PHMac.java @@ -172,7 +172,7 @@ implements Mac private static byte[] acquireTmp(int sz) { byte rv[] = null; synchronized (_tmpBuf[sz == 32 ? 0 : 1]) { - if (_tmpBuf[sz == 32 ? 0 : 1].size() > 0) + if (!_tmpBuf[sz == 32 ? 0 : 1].isEmpty()) rv = (byte[])_tmpBuf[sz == 32 ? 0 : 1].remove(0); } if (rv != null) diff --git a/router/java/src/net/i2p/data/i2np/DatabaseLookupMessage.java b/router/java/src/net/i2p/data/i2np/DatabaseLookupMessage.java index 3b197ee927e04cf8f4cb0dc7224683722848eb87..80aaa889182b5924add0ad029234814e1c0ba259 100644 --- a/router/java/src/net/i2p/data/i2np/DatabaseLookupMessage.java +++ b/router/java/src/net/i2p/data/i2np/DatabaseLookupMessage.java @@ -205,7 +205,7 @@ public class DatabaseLookupMessage extends I2NPMessageImpl { } else { out[curIndex++] = DataHelper.BOOLEAN_FALSE; } - if ( (_dontIncludePeers == null) || (_dontIncludePeers.size() <= 0) ) { + if ( (_dontIncludePeers == null) || (_dontIncludePeers.isEmpty()) ) { out[curIndex++] = 0x0; out[curIndex++] = 0x0; } else { diff --git a/router/java/src/net/i2p/router/Blocklist.java b/router/java/src/net/i2p/router/Blocklist.java index 4f14fe8bb1e6fc898d5a0eb6118eda0bde1e3235..0f68355db2a392eba7abc8f9cafd9d7147fae395 100644 --- a/router/java/src/net/i2p/router/Blocklist.java +++ b/router/java/src/net/i2p/router/Blocklist.java @@ -472,7 +472,7 @@ public class Blocklist { RouterInfo pinfo = _context.netDb().lookupRouterInfoLocally(peer); if (pinfo == null) return rv; Set<RouterAddress> paddr = pinfo.getAddresses(); - if (paddr == null || paddr.size() == 0) + if (paddr == null || paddr.isEmpty()) return rv; String oldphost = null; List<RouterAddress> pladdr = new ArrayList(paddr); @@ -773,7 +773,7 @@ public class Blocklist { //out.write("<h2>Banned IPs</h2>"); Set<Integer> singles = new TreeSet(); singles.addAll(_singleIPBlocklist); - if (singles.size() > 0) { + if (!singles.isEmpty()) { out.write("<table><tr><td><b>Transient IPs</b></td></tr>"); for (Iterator<Integer> iter = singles.iterator(); iter.hasNext(); ) { int ip = iter.next().intValue(); diff --git a/router/java/src/net/i2p/router/InNetMessagePool.java b/router/java/src/net/i2p/router/InNetMessagePool.java index d7b3b9222462e8cf0b45ae62c6554b1ebd09ae69..47b799da5cc09c1d5a93836f866cc20eaeb2ff37 100644 --- a/router/java/src/net/i2p/router/InNetMessagePool.java +++ b/router/java/src/net/i2p/router/InNetMessagePool.java @@ -356,7 +356,7 @@ public class InNetMessagePool implements Service { I2NPMessage msg = null; Hash from = null; synchronized (_pendingDataMessages) { - if (_pendingDataMessages.size() > 0) { + if (!_pendingDataMessages.isEmpty()) { msg = (I2NPMessage)_pendingDataMessages.remove(0); from = (Hash)_pendingDataMessagesFrom.remove(0); } @@ -379,7 +379,7 @@ public class InNetMessagePool implements Service { I2NPMessage msg = null; int remaining = 0; synchronized (_pendingGatewayMessages) { - if (_pendingGatewayMessages.size() > 0) + if (!_pendingGatewayMessages.isEmpty()) msg = (I2NPMessage)_pendingGatewayMessages.remove(0); remaining = _pendingGatewayMessages.size(); } @@ -397,7 +397,7 @@ public class InNetMessagePool implements Service { I2NPMessage msg = null; try { synchronized (_pendingGatewayMessages) { - if (_pendingGatewayMessages.size() <= 0) + if (_pendingGatewayMessages.isEmpty()) _pendingGatewayMessages.wait(); else msg = (I2NPMessage)_pendingGatewayMessages.remove(0); @@ -428,7 +428,7 @@ public class InNetMessagePool implements Service { Hash from = null; try { synchronized (_pendingDataMessages) { - if (_pendingDataMessages.size() <= 0) { + if (_pendingDataMessages.isEmpty()) { _pendingDataMessages.wait(); } else { msg = (I2NPMessage)_pendingDataMessages.remove(0); diff --git a/router/java/src/net/i2p/router/JobQueue.java b/router/java/src/net/i2p/router/JobQueue.java index facdb8921ce89a9255898decb153e0d44fc42642..892a678edc094837c560de06d2a7b573a3933484 100644 --- a/router/java/src/net/i2p/router/JobQueue.java +++ b/router/java/src/net/i2p/router/JobQueue.java @@ -383,7 +383,7 @@ public class JobQueue { public synchronized void runQueue(int numThreads) { // we're still starting up [serially] and we've got at least one runner, // so dont do anything - if ( (_queueRunners.size() > 0) && (!_allowParallelOperation) ) return; + if ( (!_queueRunners.isEmpty()) && (!_allowParallelOperation) ) return; // we've already enabled parallel operation, so grow to however many are // specified diff --git a/router/java/src/net/i2p/router/Shitlist.java b/router/java/src/net/i2p/router/Shitlist.java index 482d4264c0e0a88b6b2e0e37a096e72ba0ef229f..f675d1056578151db6f8c55a560de209d1d9b793 100644 --- a/router/java/src/net/i2p/router/Shitlist.java +++ b/router/java/src/net/i2p/router/Shitlist.java @@ -210,7 +210,7 @@ public class Shitlist { fully = true; } else { e.transports.remove(transport); - if (e.transports.size() <= 0) + if (e.transports.isEmpty()) fully = true; else _entries.put(peer, e); diff --git a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java index 770c228222dac4dae1dda19a708dd8567c7e87d3..45622d117016a84e44b0a3675b9744061bdc149f 100644 --- a/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java +++ b/router/java/src/net/i2p/router/message/OutboundClientMessageOneShotJob.java @@ -363,7 +363,7 @@ public class OutboundClientMessageOneShotJob extends JobImpl { } } - if (leases.size() <= 0) { + if (leases.isEmpty()) { if (_log.shouldLog(Log.INFO)) _log.info(getJobId() + ": No leases found from: " + _leaseSet); return false; @@ -536,7 +536,7 @@ public class OutboundClientMessageOneShotJob extends JobImpl { ReplySelector selector = null; if (wantACK) { TagSetHandle tsh = null; - if ( (sessKey != null) && (tags != null) && (tags.size() > 0) ) { + if ( (sessKey != null) && (tags != null) && (!tags.isEmpty()) ) { if (_leaseSet != null) { SessionKeyManager skm = getContext().clientManager().getClientSessionKeyManager(_from.calculateHash()); if (skm != null) diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java index 1b81b6e37d479a2c3f9ae1f1198c0e5cc0c39c32..9f21962c197aaf84009640c2489e2d2c195f9597 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodOnlySearchJob.java @@ -93,13 +93,13 @@ class FloodOnlySearchJob extends FloodSearchJob { _shouldProcessDSRM = floodfillPeers.size() < MIN_FOR_NO_DSRM || getContext().routingKeyGenerator().getLastChanged() > getContext().clock().now() - 30*60*1000; - if (floodfillPeers.size() <= 0) { + if (floodfillPeers.isEmpty()) { // ask anybody, they may not return the answer but they will return a few ff peers we can go look up, // so this situation should be temporary if (_log.shouldLog(Log.WARN)) _log.warn("Running netDb searches against the floodfill peers, but we don't know any"); floodfillPeers = new ArrayList(_facade.getAllRouters()); - if (floodfillPeers.size() <= 0) { + if (floodfillPeers.isEmpty()) { if (_log.shouldLog(Log.ERROR)) _log.error("We don't know any peers at all"); failed(); @@ -256,7 +256,7 @@ class FloodOnlySearchJob extends FloodSearchJob { _facade.complete(_key); getContext().statManager().addRateData("netDb.successTime", System.currentTimeMillis()-_created, System.currentTimeMillis()-_created); synchronized (_onFind) { - while (_onFind.size() > 0) + while (!_onFind.isEmpty()) getContext().jobQueue().addJob((Job)_onFind.remove(0)); } } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodSearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodSearchJob.java index 09f593c80a39308f0c9f0b65f2f8116e820dc128..bfa5c59ead02121e2f0a5c49870140b6ae7c6a58 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodSearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodSearchJob.java @@ -96,7 +96,7 @@ public class FloodSearchJob extends JobImpl { removed = new ArrayList(_onFailed); _onFailed.clear(); } - while (removed.size() > 0) + while (!removed.isEmpty()) getContext().jobQueue().addJob(removed.remove(0)); getContext().messageRegistry().unregisterPending(out); return; @@ -140,7 +140,7 @@ public class FloodSearchJob extends JobImpl { removed = new ArrayList(_onFailed); _onFailed.clear(); } - while (removed.size() > 0) + while (!removed.isEmpty()) getContext().jobQueue().addJob(removed.remove(0)); } } @@ -155,7 +155,7 @@ public class FloodSearchJob extends JobImpl { removed = new ArrayList(_onFind); _onFind.clear(); } - while (removed.size() > 0) + while (!removed.isEmpty()) getContext().jobQueue().addJob(removed.remove(0)); } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java index 291080f39f7d5519837df3d6cee30d5082949961..3964b3a1ea49246f856362ed52a7c05662335e39 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillMonitorJob.java @@ -83,7 +83,7 @@ class FloodfillMonitorJob extends JobImpl { List floodfillPeers = _facade.getFloodfillPeers(); long now = getContext().clock().now(); // We know none at all! Must be our turn... - if (floodfillPeers == null || floodfillPeers.size() <= 0) { + if (floodfillPeers == null || floodfillPeers.isEmpty()) { _lastChanged = now; return true; } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java index 61cc5f1aa4031cef47a5ba8815d52ebd82b14386..540173ed63404457315894cf71bd784db7bc8788 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillNetworkDatabaseFacade.java @@ -305,13 +305,13 @@ public class FloodfillNetworkDatabaseFacade extends KademliaNetworkDatabaseFacad Job fail = null; if (onFind != null) { synchronized (onFind) { - if (onFind.size() > 0) + if (!onFind.isEmpty()) find = onFind.remove(0); } } if (onFailed != null) { synchronized (onFailed) { - if (onFailed.size() > 0) + if (!onFailed.isEmpty()) fail = onFailed.remove(0); } } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillPeerSelector.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillPeerSelector.java index 9cacb0eed437c3da0621160adfd3579d3f4324c0..c4e1140c2a872cf38db4a03ff61f8e69024192a5 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillPeerSelector.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillPeerSelector.java @@ -313,7 +313,7 @@ class FloodfillPeerSelector extends PeerSelector { } // are we corrupting _sorted here? for (int i = rv.size(); i < howMany; i++) { - if (_sorted.size() <= 0) + if (_sorted.isEmpty()) break; Hash entry = _sorted.first(); rv.add(entry); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java index 5dd5a261bf0367c25248ce29ba47e9352a7b9afc..fa944f384dafc0c53a653f3b593532597ac692bb 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/FloodfillVerifyStoreJob.java @@ -138,7 +138,7 @@ public class FloodfillVerifyStoreJob extends JobImpl { Hash rkey = getContext().routingKeyGenerator().getRoutingKey(_key); FloodfillPeerSelector sel = (FloodfillPeerSelector)_facade.getPeerSelector(); List<Hash> peers = sel.selectFloodfillParticipants(rkey, 1, _ignore, _facade.getKBuckets()); - if (peers.size() > 0) + if (!peers.isEmpty()) return peers.get(0); if (_log.shouldLog(Log.WARN)) diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java index 9b01d6404d38e13afa0e33d8948604c9786588f3..d978f8488f43e246c0d08e5189b98be2652c5213 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/KademliaNetworkDatabaseFacade.java @@ -725,7 +725,7 @@ public class KademliaNetworkDatabaseFacade extends NetworkDatabaseFacade { long age = _context.clock().now() - routerInfo.getPublished(); return "Peer " + key.toBase64() + " published " + DataHelper.formatDuration(age) + " ago"; } else if (upLongEnough && !routerInfo.isCurrent(ROUTER_INFO_EXPIRATION_SHORT)) { - if (routerInfo.getAddresses().size() <= 0) + if (routerInfo.getAddresses().isEmpty()) return "Peer " + key.toBase64() + " published > 90m ago with no addresses"; RouterAddress ra = routerInfo.getTargetAddress("SSU"); if (ra != null) { diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/MessageWrapper.java b/router/java/src/net/i2p/router/networkdb/kademlia/MessageWrapper.java index 73ed7ad70477d714a12853705fff026e4fc5539a..82c7f121f02e3ca7f46c671d71e09ca5a1a9d613 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/MessageWrapper.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/MessageWrapper.java @@ -69,7 +69,7 @@ class MessageWrapper { return null; TagSetHandle tsh = null; PublicKey sentTo = to.getIdentity().getPublicKey(); - if (sentTags.size() > 0) + if (!sentTags.isEmpty()) tsh = skm.tagsDelivered(sentTo, sentKey, sentTags); if (_log.shouldLog(Log.DEBUG)) _log.debug("Sent to: " + to.getIdentity().getHash() + " with key: " + sentKey + " and tags: " + sentTags.size()); diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/PeerSelector.java b/router/java/src/net/i2p/router/networkdb/kademlia/PeerSelector.java index 7ce9853caa59f0f43385b817923d5349a44c3581..17441420262f10a03726dda007b98a522b5e1af1 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/PeerSelector.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/PeerSelector.java @@ -140,7 +140,7 @@ public class PeerSelector { public List<Hash> get(int howMany) { List<Hash> rv = new ArrayList(howMany); for (int i = 0; i < howMany; i++) { - if (_sorted.size() <= 0) + if (_sorted.isEmpty()) break; rv.add(_sorted.remove(_sorted.firstKey())); } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/SearchJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/SearchJob.java index fe3c7548510d97b71c6e4f01b1dfbc14a14d4168..9400a17f696394d1d2be36ce0a432afc00c5f1cc 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/SearchJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/SearchJob.java @@ -265,7 +265,7 @@ class SearchJob extends JobImpl { while (sent <= 0) { //boolean onlyFloodfill = onlyQueryFloodfillPeers(getContext()); boolean onlyFloodfill = true; - if (_floodfillPeersExhausted && onlyFloodfill && _state.getPending().size() <= 0) { + if (_floodfillPeersExhausted && onlyFloodfill && _state.getPending().isEmpty()) { if (_log.shouldLog(Log.WARN)) _log.warn(getJobId() + ": no non-floodfill peers left, and no more pending. Searched: " + _state.getAttempted().size() + " failed: " + _state.getFailed().size()); @@ -273,8 +273,8 @@ class SearchJob extends JobImpl { return; } List closestHashes = getClosestRouters(_state.getTarget(), toCheck, attempted); - if ( (closestHashes == null) || (closestHashes.size() <= 0) ) { - if (_state.getPending().size() <= 0) { + if ( (closestHashes == null) || (closestHashes.isEmpty()) ) { + if (_state.getPending().isEmpty()) { // we tried to find some peers, but there weren't any and no one else is going to answer if (_log.shouldLog(Log.INFO)) _log.info(getJobId() + ": No peers left, and none pending! Already searched: " @@ -746,7 +746,7 @@ class SearchJob extends JobImpl { private void handleDeferred(boolean success) { List deferred = null; synchronized (_deferredSearches) { - if (_deferredSearches.size() > 0) { + if (!_deferredSearches.isEmpty()) { deferred = new ArrayList(_deferredSearches); _deferredSearches.clear(); } diff --git a/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java b/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java index 690f37b87fc48e0bb83330864f3ab3f715b9b54c..ad8217c6a7944319b2ee195015501445c4a456c8 100644 --- a/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java +++ b/router/java/src/net/i2p/router/networkdb/kademlia/StoreJob.java @@ -151,8 +151,8 @@ class StoreJob extends JobImpl { //else // closestHashes = getClosestRouters(_state.getTarget(), toCheck, _state.getAttempted()); closestHashes = getClosestFloodfillRouters(_state.getTarget(), toCheck, _state.getAttempted()); - if ( (closestHashes == null) || (closestHashes.size() <= 0) ) { - if (_state.getPending().size() <= 0) { + if ( (closestHashes == null) || (closestHashes.isEmpty()) ) { + if (_state.getPending().isEmpty()) { if (_log.shouldLog(Log.INFO)) _log.info(getJobId() + ": No more peers left and none pending"); fail(); diff --git a/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java b/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java index dbeee1a4dffbe292493ff38e75ccfbf6a45627ba..29fce33a6cb18e1664b2f61efff98151c36c0089 100644 --- a/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java +++ b/router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java @@ -285,12 +285,12 @@ public class Reseeder { private static final String BUNDLE_NAME = "net.i2p.router.web.messages"; /** translate */ - public String _(String key) { + private String _(String key) { return Translate.getString(key, _context, BUNDLE_NAME); } /** translate */ - public String _(String s, Object o, Object o2) { + private String _(String s, Object o, Object o2) { return Translate.getString(s, o, o2, _context, BUNDLE_NAME); } diff --git a/router/java/src/net/i2p/router/peermanager/PeerManager.java b/router/java/src/net/i2p/router/peermanager/PeerManager.java index 61f5c2062ebbb474d16d371342227e174ebaa395..bfe038e8c50266c7eaaab0d4ad11f5f1f4fe756d 100644 --- a/router/java/src/net/i2p/router/peermanager/PeerManager.java +++ b/router/java/src/net/i2p/router/peermanager/PeerManager.java @@ -226,7 +226,7 @@ class PeerManager { int index = _context.random().nextInt(Integer.MAX_VALUE); synchronized (_capabilitiesByPeer) { List peers = locked_getPeers(capability); - if ( (peers != null) && (peers.size() > 0) ) { + if ( (peers != null) && (!peers.isEmpty()) ) { index = index % peers.size(); return (Hash)peers.get(index); } diff --git a/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java b/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java index 50fdd8ddc401a31e3ef170a371c2b6839c0392f1..3e5eafd74c9801cbfc9afcbf188dc56dc54be089 100644 --- a/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java +++ b/router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java @@ -91,7 +91,7 @@ public class CommSystemFacadeImpl extends CommSystemFacade { } Vector skews = _manager.getClockSkews(); if (skews == null || - skews.size() <= 0 || + skews.isEmpty() || (skews.size() < 5 && _context.clock().getUpdatedSuccessfully())) { return _context.clock().getOffset(); } diff --git a/router/java/src/net/i2p/router/transport/FIFOBandwidthLimiter.java b/router/java/src/net/i2p/router/transport/FIFOBandwidthLimiter.java index e9cde0b9c70fe536db3d7d1e7f57b80317f0fd70..112d3660140285009f309d4c48794e7f02721472 100644 --- a/router/java/src/net/i2p/router/transport/FIFOBandwidthLimiter.java +++ b/router/java/src/net/i2p/router/transport/FIFOBandwidthLimiter.java @@ -443,7 +443,7 @@ public class FIFOBandwidthLimiter { * */ private final void locked_satisfyInboundUnlimited(List<Request> satisfied) { - while (_pendingInboundRequests.size() > 0) { + while (!_pendingInboundRequests.isEmpty()) { SimpleRequest req = (SimpleRequest)_pendingInboundRequests.remove(0); int allocated = req.getPendingInboundRequested(); _totalAllocatedInboundBytes.addAndGet(allocated); @@ -558,7 +558,7 @@ public class FIFOBandwidthLimiter { * */ private final void locked_satisfyOutboundUnlimited(List<Request> satisfied) { - while (_pendingOutboundRequests.size() > 0) { + while (!_pendingOutboundRequests.isEmpty()) { SimpleRequest req = (SimpleRequest)_pendingOutboundRequests.remove(0); int allocated = req.getPendingOutboundRequested(); _totalAllocatedOutboundBytes.addAndGet(allocated); diff --git a/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java b/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java index 17108a8e87c2cf67dd28d8f6c4f10af24dafad0a..b8261d1d2bec8b703016eafff2409e0c37328221 100644 --- a/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java +++ b/router/java/src/net/i2p/router/transport/OutboundMessageRegistry.java @@ -185,7 +185,7 @@ public class OutboundMessageRegistry { if (old instanceof List) { List l = (List)old; l.remove(msg); - if (l.size() > 0) { + if (!l.isEmpty()) { _selectorToMessage.put(sel, l); stillActive = true; } @@ -221,7 +221,7 @@ public class OutboundMessageRegistry { } } } - if (removing.size() > 0) { + if (!removing.isEmpty()) { for (int i = 0; i < removing.size(); i++) { MessageSelector sel = (MessageSelector)removing.get(i); OutNetMessage msg = null; diff --git a/router/java/src/net/i2p/router/transport/TransportImpl.java b/router/java/src/net/i2p/router/transport/TransportImpl.java index e046cdde81b4e9827f881dabc8d1d8afd3127dc2..77604083e931330c1893719a42905ba209d565c9 100644 --- a/router/java/src/net/i2p/router/transport/TransportImpl.java +++ b/router/java/src/net/i2p/router/transport/TransportImpl.java @@ -147,7 +147,7 @@ public abstract class TransportImpl implements Transport { public OutNetMessage getNextMessage() { OutNetMessage msg = null; synchronized (_sendPool) { - if (_sendPool.size() <= 0) return null; + if (_sendPool.isEmpty()) return null; msg = (OutNetMessage)_sendPool.remove(0); // use priority queues later } msg.beginSend(); diff --git a/router/java/src/net/i2p/router/transport/TransportManager.java b/router/java/src/net/i2p/router/transport/TransportManager.java index a479ad52f932add0b7f5807217d526b4c13f7435..a4088b715b547aeec236adb43149a904af05c463 100644 --- a/router/java/src/net/i2p/router/transport/TransportManager.java +++ b/router/java/src/net/i2p/router/transport/TransportManager.java @@ -84,7 +84,7 @@ public class TransportManager implements TransportEventListener { } if (enableNTCP(_context)) addTransport(new NTCPTransport(_context)); - if (_transports.size() <= 0) + if (_transports.isEmpty()) _log.log(Log.CRIT, "No transports are enabled"); } @@ -223,7 +223,7 @@ public class TransportManager implements TransportEventListener { * Use for throttling in the router. */ public boolean haveHighOutboundCapacity() { - if (_transports.size() <= 0) + if (_transports.isEmpty()) return false; for (int i = 0; i < _transports.size(); i++) { if (!_transports.get(i).haveCapacity(HIGH_CAPACITY_PCT)) @@ -255,7 +255,7 @@ public class TransportManager implements TransportEventListener { Vector skews = new Vector(); for (int i = 0; i < _transports.size(); i++) { Vector tempSkews = _transports.get(i).getClockSkews(); - if ((tempSkews == null) || (tempSkews.size() <= 0)) continue; + if ((tempSkews == null) || (tempSkews.isEmpty())) continue; skews.addAll(tempSkews); } if (_log.shouldLog(Log.DEBUG)) @@ -373,7 +373,7 @@ public class TransportManager implements TransportEventListener { public TransportBid getBid(OutNetMessage msg) { List<TransportBid> bids = getBids(msg); - if ( (bids == null) || (bids.size() <= 0) ) + if ( (bids == null) || (bids.isEmpty()) ) return null; else return bids.get(0); diff --git a/router/java/src/net/i2p/router/transport/UPnP.java b/router/java/src/net/i2p/router/transport/UPnP.java index 0fc538a3f3503ddbe3510650426b308f24dc82d5..aa2261cfc779527ce8ce4e578dc219b78ae8485e 100644 --- a/router/java/src/net/i2p/router/transport/UPnP.java +++ b/router/java/src/net/i2p/router/transport/UPnP.java @@ -391,7 +391,7 @@ public class UPnP extends ControlPoint implements DeviceChangeListener, EventLis // TODO: extend it! RTFM private void listSubServices(Device dev, StringBuilder sb) { ServiceList sl = dev.getServiceList(); - if (sl.size() <= 0) + if (sl.isEmpty()) return; sb.append("<ul>\n"); for(int i=0; i<sl.size(); i++) { @@ -440,7 +440,7 @@ public class UPnP extends ControlPoint implements DeviceChangeListener, EventLis listSubServices(dev, sb); DeviceList dl = dev.getDeviceList(); - if (dl.size() <= 0) + if (dl.isEmpty()) return; sb.append("<ul>\n"); for(int j=0; j<dl.size(); j++) { diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java index 043fb18c26af697b09d4b818198aac56f98cb795..52c0218fc77501e3c34fbbcf8e5d47cdb2e7e0f0 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java +++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java @@ -487,7 +487,7 @@ public class NTCPConnection implements FIFOBandwidthLimiter.CompleteListener { return; } //throw new RuntimeException("We should not be preparing a write while we still have one pending"); - if (_outbound.size() > 0) { + if (!_outbound.isEmpty()) { msg = (OutNetMessage)_outbound.remove(0); _currentOutbound = msg; } else { @@ -711,7 +711,7 @@ public class NTCPConnection implements FIFOBandwidthLimiter.CompleteListener { private final static List _bufs = new ArrayList(NUM_PREP_BUFS); private PrepBuffer acquireBuf() { synchronized (_bufs) { - if (_bufs.size() > 0) { + if (!_bufs.isEmpty()) { PrepBuffer b = (PrepBuffer)_bufs.remove(0); b.acquired(); return b; diff --git a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java index 779fd97e4f1cb60cac5a9bd48936ecc5bf5184ab..fea56423b65ba3674d294a9a2908296652a767b7 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java +++ b/router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java @@ -559,7 +559,7 @@ public class NTCPTransport extends TransportImpl { } for (int i = 0; expired != null && i < expired.size(); i++) ((NTCPConnection)expired.get(i)).close(); - if ( (expired != null) && (expired.size() > 0) ) + if ( (expired != null) && (!expired.isEmpty()) ) _context.statManager().addRateData("ntcp.outboundEstablishFailed", expired.size(), 0); } @@ -763,12 +763,12 @@ public class NTCPTransport extends TransportImpl { buf.setLength(0); } - if (peers.size() > 0) { + if (!peers.isEmpty()) { // buf.append("<tr> <td colspan=\"11\"><hr></td></tr>\n"); buf.append("<tr class=\"tablefooter\"><td align=\"center\"><b>").append(peers.size()).append(' ').append(_("peers")).append("</b></td><td> </td><td> "); buf.append("</td><td align=\"center\"><b>").append(formatRate(bpsRecv/1024)).append("/").append(formatRate(bpsSend/1024)).append("</b>"); buf.append("</td><td align=\"center\"><b>").append(DataHelper.formatDuration(totalUptime/peers.size())); - buf.append("</b></td><td align=\"center\"><b>").append(peers.size() > 0 ? DataHelper.formatDuration(offsetTotal*1000/peers.size()) : "0ms"); + buf.append("</b></td><td align=\"center\"><b>").append((!peers.isEmpty()) ? DataHelper.formatDuration(offsetTotal*1000/peers.size()) : "0ms"); buf.append("</b></td><td align=\"center\"><b>").append(totalSend).append("</b></td><td align=\"center\"><b>").append(totalRecv); buf.append("</b></td><td> </td><td> </td></tr>\n"); } diff --git a/router/java/src/net/i2p/router/transport/ntcp/Reader.java b/router/java/src/net/i2p/router/transport/ntcp/Reader.java index c0f77c1a8560fb46b630551dbe0ae0305aca39bd..ce21e13c315ad596f63f8b0780f58d9cd2f23652 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/Reader.java +++ b/router/java/src/net/i2p/router/transport/ntcp/Reader.java @@ -40,7 +40,7 @@ class Reader { } } public void stopReading() { - while (_runners.size() > 0) { + while (!_runners.isEmpty()) { Runner r = _runners.remove(0); r.stop(); } @@ -90,7 +90,7 @@ class Reader { } else { _liveReads.remove(con); con = null; - if (_pendingConnections.size() <= 0) { + if (_pendingConnections.isEmpty()) { _pendingConnections.wait(); } else { con = _pendingConnections.remove(0); diff --git a/router/java/src/net/i2p/router/transport/ntcp/Writer.java b/router/java/src/net/i2p/router/transport/ntcp/Writer.java index 45efc30553d2c765bb415145703a4355614876f7..ca676c572ce5c4dc7a6572f964d8ec918338ee34 100644 --- a/router/java/src/net/i2p/router/transport/ntcp/Writer.java +++ b/router/java/src/net/i2p/router/transport/ntcp/Writer.java @@ -39,7 +39,7 @@ class Writer { } } public void stopWriting() { - while (_runners.size() > 0) { + while (!_runners.isEmpty()) { Runner r = _runners.remove(0); r.stop(); } @@ -95,7 +95,7 @@ class Writer { } else { _liveWrites.remove(con); con = null; - if (_pendingConnections.size() <= 0) { + if (_pendingConnections.isEmpty()) { if (_log.shouldLog(Log.DEBUG)) _log.debug("Done writing, but nothing pending, so wait"); _pendingConnections.wait(); diff --git a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java index 64e1bdea2df425b95342d72aa22c55eebe1ea061..1a99c095cdcf01daa2443efbdbd20bccdbe21eec 100644 --- a/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java +++ b/router/java/src/net/i2p/router/transport/udp/EstablishmentManager.java @@ -359,14 +359,14 @@ public class EstablishmentManager { /******** private int locked_admitQueued() { int admitted = 0; - while ( (_queuedOutbound.size() > 0) && (_outboundStates.size() < getMaxConcurrentEstablish()) ) { + while ( (!_queuedOutbound.isEmpty()) && (_outboundStates.size() < getMaxConcurrentEstablish()) ) { // ok, active shrunk, lets let some queued in. duplicate the synchronized // section from the add( RemoteHostId to = (RemoteHostId)_queuedOutbound.keySet().iterator().next(); List queued = (List)_queuedOutbound.remove(to); - if (queued.size() <= 0) + if (queued.isEmpty()) continue; OutNetMessage msg = (OutNetMessage)queued.get(0); diff --git a/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java b/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java index 4b16d078dae7bda704376d642aa9e60045389086..53791ffa99ef85e76e215dab1c2baa18f6b51dc0 100644 --- a/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java +++ b/router/java/src/net/i2p/router/transport/udp/PacketBuilder.java @@ -131,7 +131,7 @@ public class PacketBuilder { } } - if ( (partialACKsRemaining != null) && (partialACKsRemaining.size() > 0) ) { + if ( (partialACKsRemaining != null) && (!partialACKsRemaining.isEmpty()) ) { int origNumRemaining = partialACKsRemaining.size(); int numPartialOffset = off; // leave it blank for now, since we could skip some diff --git a/router/java/src/net/i2p/router/transport/udp/PeerState.java b/router/java/src/net/i2p/router/transport/udp/PeerState.java index 06e528a944c0978e3b243b97e1d12fc2883f1c1c..86b3aad6eee127045bd2f2a40b8f38b4605158d0 100644 --- a/router/java/src/net/i2p/router/transport/udp/PeerState.java +++ b/router/java/src/net/i2p/router/transport/udp/PeerState.java @@ -749,7 +749,7 @@ public class PeerState { } if (_currentACKs.isEmpty()) _wantACKSendSince = -1; - if (alwaysIncludeRetransmissions || rv.size() > 0) { + if (alwaysIncludeRetransmissions || !rv.isEmpty()) { // now repeat by putting in some old ACKs // randomly selected from the Resend queue. // Maybe we should only resend each one a certain number of times... diff --git a/router/java/src/net/i2p/router/transport/udp/UDPFlooder.java b/router/java/src/net/i2p/router/transport/udp/UDPFlooder.java index 38bf62246e902d8f53d85cf9b1a0358c3352479f..aa34b1a4bff4c01d93cc0003fddc7d901150a343 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPFlooder.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPFlooder.java @@ -66,7 +66,7 @@ class UDPFlooder implements Runnable { while (_alive) { try { synchronized (_peers) { - if (_peers.size() <= 0) + if (_peers.isEmpty()) _peers.wait(); } } catch (InterruptedException ie) {} diff --git a/router/java/src/net/i2p/router/transport/udp/UDPSender.java b/router/java/src/net/i2p/router/transport/udp/UDPSender.java index 6d1cd7c3a7ba4fe1fffdb75ee571abb011bd3931..745b50df4b57b35ae11686cdc2048e782b9cb91e 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPSender.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPSender.java @@ -106,12 +106,12 @@ public class UDPSender { synchronized (_outboundQueue) { // clear out any too-old packets UDPPacket head = null; - if (_outboundQueue.size() > 0) { + if (!_outboundQueue.isEmpty()) { head = (UDPPacket)_outboundQueue.get(0); while (head.getLifetime() > MAX_HEAD_LIFETIME) { _outboundQueue.remove(0); removed++; - if (_outboundQueue.size() > 0) + if (!_outboundQueue.isEmpty()) head = (UDPPacket)_outboundQueue.get(0); else break; diff --git a/router/java/src/net/i2p/router/tunnel/BatchedPreprocessor.java b/router/java/src/net/i2p/router/tunnel/BatchedPreprocessor.java index 879eb78e70cf09eaa9c3fba4cd9393a54a66a5bb..4533956d37939dc2a8360d3bc8c73fac1c74a0b3 100644 --- a/router/java/src/net/i2p/router/tunnel/BatchedPreprocessor.java +++ b/router/java/src/net/i2p/router/tunnel/BatchedPreprocessor.java @@ -137,7 +137,7 @@ public class BatchedPreprocessor extends TrivialPreprocessor { int beforeLooping = pending.size(); // loop until the queue is empty - while (pending.size() > 0) { + while (!pending.isEmpty()) { int allocated = 0; long beforePendingLoop = System.currentTimeMillis(); @@ -252,7 +252,7 @@ public class BatchedPreprocessor extends TrivialPreprocessor { _context.statManager().addRateData("tunnel.writeDelay", cur.getLifetime(), cur.getData().length); } - if (pending.size() > 0) { + if (!pending.isEmpty()) { // rare _pendingSince = _context.clock().now(); _context.statManager().addRateData("tunnel.batchFlushRemaining", pending.size(), beforeSize); diff --git a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java index fddb30d2caa27c221212b2896ff8ac4cfbe21046..a761ef12081908fcb58caed4039b1af882ab95fe 100644 --- a/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java +++ b/router/java/src/net/i2p/router/tunnel/PumpedTunnelGateway.java @@ -85,7 +85,7 @@ public class PumpedTunnelGateway extends TunnelGateway { */ void pump(List<Pending> queueBuf) { synchronized (_prequeue) { - if (_prequeue.size() > 0) { + if (!_prequeue.isEmpty()) { queueBuf.addAll(_prequeue); _prequeue.clear(); } else { diff --git a/router/java/src/net/i2p/router/tunnel/TrivialPreprocessor.java b/router/java/src/net/i2p/router/tunnel/TrivialPreprocessor.java index 3dac4dd205cbcae3206296834459719001243730..c9b28b85629fe8a448115d21b7da411deba14b95 100644 --- a/router/java/src/net/i2p/router/tunnel/TrivialPreprocessor.java +++ b/router/java/src/net/i2p/router/tunnel/TrivialPreprocessor.java @@ -59,7 +59,7 @@ public class TrivialPreprocessor implements TunnelGateway.QueuePreprocessor { buf = new StringBuilder(256); buf.append("Trivial preprocessing of ").append(pending.size()).append(" "); } - while (pending.size() > 0) { + while (!pending.isEmpty()) { TunnelGateway.Pending msg = pending.remove(0); long beforePreproc = System.currentTimeMillis(); byte preprocessed[][] = preprocess(msg); diff --git a/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java b/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java index 7dfbded7d854dc41b97060b1331a33ae8010a3e5..b7659077cc144ef582430f0c617f7d34abbe6b20 100644 --- a/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java +++ b/router/java/src/net/i2p/router/tunnel/TunnelDispatcher.java @@ -649,7 +649,7 @@ public class TunnelDispatcher implements Service { public void dropBiggestParticipating() { List<HopConfig> partTunnels = listParticipatingTunnels(); - if ((partTunnels == null) || (partTunnels.size() == 0)) { + if ((partTunnels == null) || (partTunnels.isEmpty())) { if (_log.shouldLog(Log.ERROR)) _log.error("Not dropping tunnel, since partTunnels was null or had 0 items!"); return; @@ -745,7 +745,7 @@ public class TunnelDispatcher implements Service { Long dropTime = new Long(cfg.getExpiration() + 2*Router.CLOCK_FUDGE_FACTOR + LEAVE_BATCH_TIME); boolean noTunnels; synchronized (LeaveTunnel.this) { - noTunnels = _configs.size() <= 0; + noTunnels = _configs.isEmpty(); _configs.add(cfg); _times.add(dropTime); @@ -777,13 +777,13 @@ public class TunnelDispatcher implements Service { long now = getContext().clock().now() + LEAVE_BATCH_TIME; // leave all expiring in next 10 sec while (true) { synchronized (LeaveTunnel.this) { - if (_configs.size() <= 0) + if (_configs.isEmpty()) return; nextTime = _times.get(0); if (nextTime.longValue() <= now) { cur = _configs.remove(0); _times.remove(0); - if (_times.size() > 0) + if (!_times.isEmpty()) nextTime = _times.get(0); else nextTime = null; diff --git a/router/java/src/net/i2p/router/tunnel/TunnelGateway.java b/router/java/src/net/i2p/router/tunnel/TunnelGateway.java index bf093f7a261965a1ede21a74b36bc8e8aed73f1a..7291c8706a3207f7b07fda16c4b213874e4ac25f 100644 --- a/router/java/src/net/i2p/router/tunnel/TunnelGateway.java +++ b/router/java/src/net/i2p/router/tunnel/TunnelGateway.java @@ -294,7 +294,7 @@ public class TunnelGateway { //if (_queue.size() > 10000) // stay in the synchronized block // System.out.println("foo!"); afterChecked = _context.clock().now(); - if (_queue.size() > 0) { + if (!_queue.isEmpty()) { if ( (remaining > 0) && (_log.shouldLog(Log.DEBUG)) ) _log.debug("Remaining before delayed flush preprocessing: " + _queue); wantRequeue = _preprocessor.preprocessQueue(_queue, _sender, _receiver); diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildExecutor.java b/router/java/src/net/i2p/router/tunnel/pool/BuildExecutor.java index aa6417fdac45334f7e4d3986cec971a4a9cc9942..8b08b6ec8cf5ed3d4e296e42bc609d243f7950fb 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildExecutor.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildExecutor.java @@ -298,7 +298,7 @@ class BuildExecutor implements Runnable { } } } else { - if ( (allowed > 0) && (wanted.size() > 0) ) { + if ( (allowed > 0) && (!wanted.isEmpty()) ) { Collections.shuffle(wanted, _context.random()); Collections.sort(wanted, new TunnelPoolComparator()); @@ -307,7 +307,7 @@ class BuildExecutor implements Runnable { if (allowed > 2) allowed = 2; - for (int i = 0; (i < allowed) && (wanted.size() > 0); i++) { + for (int i = 0; (i < allowed) && (!wanted.isEmpty()); i++) { TunnelPool pool = wanted.remove(0); //if (pool.countWantedTunnels() <= 0) // continue; diff --git a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java index 01eb674f4dbaad73883f716936c557f673f9da54..705552c19060a3c62736211032b872bed7ee1bad 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java +++ b/router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java @@ -139,14 +139,14 @@ class BuildHandler { } else { break; } - } while (_inboundBuildMessages.size() > 0); + } while (!_inboundBuildMessages.isEmpty()); if (dropExpired > 0) _context.throttle().setTunnelStatus(_x("Dropping tunnel requests: Too slow")); // now pull off the oldest requests first (we're doing a tail-drop // when adding) - for (int i = 0; i < toHandle && _inboundBuildMessages.size() > 0; i++) + for (int i = 0; i < toHandle && !_inboundBuildMessages.isEmpty(); i++) handled.add(_inboundBuildMessages.remove(0)); //} } diff --git a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java index d116431a473053de1cfd1bff6a858da4ad008234..e6f3e599e8bf4c70b16c7f282529b748cdb476c5 100644 --- a/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java +++ b/router/java/src/net/i2p/router/tunnel/pool/TunnelPool.java @@ -152,7 +152,7 @@ public class TunnelPool { _lastSelectionPeriod = period; _lastSelected = null; - if (_tunnels.size() <= 0) { + if (_tunnels.isEmpty()) { if (_log.shouldLog(Log.WARN)) _log.warn(toString() + ": No tunnels to select from"); } else { @@ -483,7 +483,7 @@ public class TunnelPool { if (_log.shouldLog(Log.WARN)) _log.warn(toString() + ": Not enough tunnels (" + _tunnels.size() + ", wanted " + wanted + ")"); // see comment below - if (_tunnels.size() <= 0) + if (_tunnels.isEmpty()) return null; } @@ -538,7 +538,7 @@ public class TunnelPool { if (leases.size() < wanted) { if (_log.shouldLog(Log.WARN)) _log.warn(toString() + ": Not enough leases (" + leases.size() + ", wanted " + wanted + ")"); - if (leases.size() <= 0) + if (leases.isEmpty()) return null; } @@ -858,7 +858,7 @@ public class TunnelPool { if (!forceZeroHop) { peers = _peerSelector.selectPeers(_context, settings); - if ( (peers == null) || (peers.size() <= 0) ) { + if ( (peers == null) || (peers.isEmpty()) ) { // no inbound or outbound tunnels to send the request through, and // the pool is refusing 0 hop tunnels if (peers == null) {