From f34b4678bad032eb24699ac0efaa4985784f1a94 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Thu, 7 Dec 2017 19:53:06 +0000 Subject: [PATCH] Util: Deprecate BigPipedInputStream --- .../src/net/i2p/util/BigPipedInputStream.java | 21 +++++-------------- core/java/src/net/i2p/util/EepGet.java | 2 +- .../net/i2p/util/InternalServerSocket.java | 4 ++-- core/java/src/net/i2p/util/SSLEepGet.java | 2 +- 4 files changed, 9 insertions(+), 20 deletions(-) diff --git a/core/java/src/net/i2p/util/BigPipedInputStream.java b/core/java/src/net/i2p/util/BigPipedInputStream.java index 8381c7d212..a5a25a3f33 100644 --- a/core/java/src/net/i2p/util/BigPipedInputStream.java +++ b/core/java/src/net/i2p/util/BigPipedInputStream.java @@ -3,6 +3,8 @@ package net.i2p.util; import java.io.PipedInputStream; /** + * We are now Java 6 minimum. Just use PipedInputStream. + * * Java 1.5 PipedInputStream buffers are only 1024 bytes; our I2CP messages are typically 1730 bytes, * thus causing thread blockage before the whole message is transferred. * We can specify buffer size in 1.6 but not in 1.5. @@ -12,32 +14,19 @@ import java.io.PipedInputStream; * * Moved from InternalServerSocket. * @since 0.8.9 + * @deprecated scheduled for removal in 0.9.34 */ +@Deprecated public class BigPipedInputStream extends PipedInputStream { - private static final boolean oneDotSix = SystemVersion.isJava6(); - private static final int PIPE_SIZE = 64*1024; - private BigPipedInputStream(int size) { - super(); - buffer = new byte[size]; - } - /** default size 64K */ public static PipedInputStream getInstance() { return getInstance(PIPE_SIZE); } public static PipedInputStream getInstance(int size) { - if (oneDotSix) { - try { - return new PipedInputStream(size); - } catch (Throwable t) { - // NoSuchMethodException or NoSuchMethodError if we somehow got the - // version detection wrong or the JVM doesn't support it - } - } - return new BigPipedInputStream(size); + return new PipedInputStream(size); } } diff --git a/core/java/src/net/i2p/util/EepGet.java b/core/java/src/net/i2p/util/EepGet.java index e44b175eee..478d2f62f2 100644 --- a/core/java/src/net/i2p/util/EepGet.java +++ b/core/java/src/net/i2p/util/EepGet.java @@ -793,7 +793,7 @@ public class EepGet { if (_isGzippedResponse) { if (_log.shouldInfo()) _log.info("Gzipped response, starting decompressor"); - PipedInputStream pi = BigPipedInputStream.getInstance(); + PipedInputStream pi = new PipedInputStream(64*1024); PipedOutputStream po = new PipedOutputStream(pi); pusher = new I2PAppThread(new Gunzipper(pi, _out), "EepGet Decompressor"); _out = po; diff --git a/core/java/src/net/i2p/util/InternalServerSocket.java b/core/java/src/net/i2p/util/InternalServerSocket.java index 51cb6c6861..fb7dfdbaa0 100644 --- a/core/java/src/net/i2p/util/InternalServerSocket.java +++ b/core/java/src/net/i2p/util/InternalServerSocket.java @@ -93,8 +93,8 @@ public class InternalServerSocket extends ServerSocket { InternalServerSocket iss = _sockets.get(Integer.valueOf(port)); if (iss == null) throw new IOException("No server for port: " + port); - PipedInputStream cis = BigPipedInputStream.getInstance(); - PipedInputStream sis = BigPipedInputStream.getInstance(); + PipedInputStream cis = new PipedInputStream(64*1024); + PipedInputStream sis = new PipedInputStream(64*1024); PipedOutputStream cos = new PipedOutputStream(sis); PipedOutputStream sos = new PipedOutputStream(cis); clientSock.setInputStream(cis); diff --git a/core/java/src/net/i2p/util/SSLEepGet.java b/core/java/src/net/i2p/util/SSLEepGet.java index a9f047842a..403e168e3f 100644 --- a/core/java/src/net/i2p/util/SSLEepGet.java +++ b/core/java/src/net/i2p/util/SSLEepGet.java @@ -576,7 +576,7 @@ public class SSLEepGet extends EepGet { Thread pusher = null; _decompressException = null; if (_isGzippedResponse) { - PipedInputStream pi = BigPipedInputStream.getInstance(); + PipedInputStream pi = new PipedInputStream(64*1024); PipedOutputStream po = new PipedOutputStream(pi); pusher = new I2PAppThread(new Gunzipper(pi, _out), "EepGet Decompressor"); _out = po; -- GitLab