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)
  • Field Details

    • _id

      protected final int _id
    • i2pSocket

      protected final I2PSocket i2pSocket
  • Constructor Details

  • Method Details

    • sendBytes

      public abstract void sendBytes(InputStream in, int size) throws IOException
      Send bytes through the SAM STREAM session socket sender
      Parameters:
      in - Data input stream
      size - 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.
    • run

      public abstract void run()
      Specified by:
      run in interface Runnable