Class NoThrowOutputStream

java.lang.Object
java.io.OutputStream
com.dropbox.core.NoThrowOutputStream
All Implemented Interfaces:
Closeable, Flushable, AutoCloseable

public final class NoThrowOutputStream extends OutputStream
Wraps an existing output stream, converting all the underlying stream's IOExceptions to our own NoThrowOutputStream.HiddenException, which is a subclass of RuntimeException. This means that the methods don't have IOException in their throws clauses.

NOTE: The name is slightly misleading in that these methods still might throw an IOException wrapped in a HiddenException, just not an IOException directly.

Also, it does have IOException in the throws clause of close(), but you're not supposed to call that method.