@Override
  public long getSize() {
    return size;
  }
Constructs a {@link ReadableStreamChannel} whose read operations return data from the provided {@code inputStream}.
<p/>
Note that {@code size} does not refer the number of bytes that is read from the {@code inputStream}. It refers
to the total size of the stream and is only used to return the size of the channel on {@link #getSize()}. The
{@code inputStream} is always read completely if {@code size} > 0.
@param inputStream the {@link InputStream} that is used to retrieve data from - on invocation of read operations.
@param size the total size of the {@code inputStream}. -1 if unknown.
@param executorService the {@link ExecutorService} that will be used to schedule blocking reads from the
                       {@code inputStream}.
ambry-commons/src/main/java/com/github/ambry/commons/InputStreamReadableStreamChannel.java