Class DefensiveDrainable

java.lang.Object
java.io.InputStream
io.deephaven.extensions.barrage.util.DefensiveDrainable
All Implemented Interfaces:
io.grpc.Drainable, Closeable, AutoCloseable
Direct Known Subclasses:
ChunkInputStreamGenerator.DrainableColumn, ConsecutiveDrainableStreams, DrainableByteArrayInputStream

public abstract class DefensiveDrainable extends InputStream implements io.grpc.Drainable
A defensive Drainable implementation that supports the non-read methods of InputStream. Callers should use Drainable.drainTo(OutputStream) when applicable. If handing off to external code that needs a real InputStream, use capture().