Buffers an {@link InputStream}, making it effectively rewindable.
Operates in-memory, just like a {@link java.io.BufferedInputStream}, up to a size threshold, then begins buffering to disk once that size threshold is crossed.
As compared with Guava's {@link com.google.common.io.FileBackedOutputStream}, does not require processing the entire stream before offering its contents to client code.
Uses the default temporary-file directory, which you can control by setting the {@code java.io.tmpdir} system property.
@see File#createTempFile(String,String)
|
|