Package net.i2p.sam
Class SAMStreamSession.StreamSender
- java.lang.Object
-
- net.i2p.sam.SAMStreamSession.StreamSender
-
- All Implemented Interfaces:
Runnable
- Enclosing class:
- SAMStreamSession
protected abstract static class SAMStreamSession.StreamSender extends Object implements Runnable
Lets us push data through the stream without blocking, (even after exceeding the I2PSocket's buffer)
-
-
Constructor Summary
Constructors Constructor Description StreamSender(I2PSocket s, int id)
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract void
run()
abstract void
sendBytes(InputStream in, int size)
Send bytes through the SAM STREAM session socket senderabstract void
shutDownGracefully()
Stop a SAM STREAM session socket sender gracefully: stop the sender thread once all pending data has been sent.abstract void
stopRunning()
Stop a SAM STREAM session socket sender thread immediately
-
-
-
Field Detail
-
_id
protected final int _id
-
i2pSocket
protected final I2PSocket i2pSocket
-
-
Constructor Detail
-
StreamSender
public StreamSender(I2PSocket s, int id) throws IOException
- Throws:
IOException
-
-
Method Detail
-
sendBytes
public abstract void sendBytes(InputStream in, int size) throws IOException
Send bytes through the SAM STREAM session socket sender- Parameters:
in
- Data input streamsize
- Count of bytes to send- Throws:
IOException
- if the client didnt provide enough data
-
stopRunning
public abstract void stopRunning()
Stop a SAM STREAM session socket sender thread immediately
-
shutDownGracefully
public abstract void shutDownGracefully()
Stop a SAM STREAM session socket sender gracefully: stop the sender thread once all pending data has been sent.
-
-