Package net.i2p.util
Class TimeoutPipedInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.PipedInputStream
-
- net.i2p.util.TimeoutPipedInputStream
-
- All Implemented Interfaces:
Closeable,AutoCloseable
class TimeoutPipedInputStream extends PipedInputStream
Adds setReadTimeout(). Must be used with a TimeoutPipedOutputStream. To support InternalSocket.setSoTimeout(). Package private, not a part of the public API, not for general use.- Since:
- 0.9.34
-
-
Field Summary
-
Fields inherited from class java.io.PipedInputStream
buffer, in, out, PIPE_SIZE
-
-
Constructor Summary
Constructors Constructor Description TimeoutPipedInputStream(int pipeSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()Overridden to save state.intread()voidsetReadTimeout(int ms)Must be called before blocking read call.(package private) voidx_receivedLast()To save state.-
Methods inherited from class java.io.PipedInputStream
available, connect, read, receive
-
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
-
-
-
Method Detail
-
read
public int read() throws IOException- Overrides:
readin classPipedInputStream- Throws:
SocketTimeoutException- if timeout is reachedIOException
-
setReadTimeout
public void setReadTimeout(int ms)
Must be called before blocking read call.- Parameters:
ms- less than or equal to zero means forever
-
x_receivedLast
void x_receivedLast()
To save state. We have to do this because can't get to closedByWriter in super.
-
close
public void close() throws IOExceptionOverridden to save state. We have to do this because can't get to closedByReader in super- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classPipedInputStream- Throws:
IOException
-
-