Class DataChunkInputStream

java.lang.Object
java.io.InputStream
io.helidon.media.common.DataChunkInputStream
All Implemented Interfaces:
Closeable, AutoCloseable

public class DataChunkInputStream extends InputStream
Provides a bridge between a reactive Flow.Publisher in Helidon and an InputStream in Jersey. It subscribes to a Helidon publisher of data chunks and makes the data available to Jersey using the blocking InputStream API. This implementation is documented here /docs-internal/datachunkinputstream.md.
  • Constructor Details

    • DataChunkInputStream

      public DataChunkInputStream(Flow.Publisher<DataChunk> originalPublisher)
      Stores publisher for later subscription. Disables executing thread validation.
      Parameters:
      originalPublisher - The original publisher.
    • DataChunkInputStream

      public DataChunkInputStream(Flow.Publisher<DataChunk> originalPublisher, boolean validate)
      Stores publisher for later subscription and sets if executing thread should be validated. If validation is enabled, it asserts if the execution thread is the same as the thread which created this instance and throws an IllegalStateException if it does.
      Parameters:
      originalPublisher - The original publisher.
      validate - executing thread validation
  • Method Details