net.i2p.sam

## Class SAMStreamSession.v1StreamSender

- java.lang.Object
- - net.i2p.sam.SAMStreamSession.StreamSender
  - - net.i2p.sam.SAMStreamSession.v1StreamSender

- All Implemented Interfaces:
    Runnable
  Enclosing class:
    SAMStreamSession

      protected class SAMStreamSession.v1StreamSender
      extends SAMStreamSession.StreamSender

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SAMStreamSession.v1StreamSender(I2PSocket s, int id)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `run()`
    `void` | `sendBytes(InputStream in, int size)` Send bytes through the SAM STREAM session socket sender
    `void` | `shutDownGracefully()` Stop a SAM STREAM session socket sender gracefully: stop the sender thread once all pending data has been sent.
    `void` | `stopRunning()` Stop a SAM STREAM session socket sender thread immediately

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SAMStreamSession.v1StreamSender

          public SAMStreamSession.v1StreamSender(I2PSocket s,
                                         int id)
                                          throws IOException

      Throws:
        `IOException`

  - ### Method Detail

    - #### sendBytes

          public void sendBytes(InputStream in,
                       int size)
                         throws IOException

      Send bytes through the SAM STREAM session socket sender
      Overrides:
        `sendBytes` in class `SAMStreamSession.StreamSender`
      Parameters:
        `in` - Data input stream
        `size` - Count of bytes to send
      Throws:
        `IOException` - if the client didnt provide enough data

    - #### stopRunning

          public void stopRunning()

      Stop a SAM STREAM session socket sender thread immediately
      Overrides:
        `stopRunning` in class `SAMStreamSession.StreamSender`

    - #### shutDownGracefully

          public void shutDownGracefully()

      Stop a SAM STREAM session socket sender gracefully: stop the sender thread once all pending data has been sent.
      Overrides:
        `shutDownGracefully` in class `SAMStreamSession.StreamSender`

    - #### run

          public void run()

      Specified by:
        `run` in interface `Runnable`
      Overrides:
        `run` in class `SAMStreamSession.StreamSender`