src/main/java/com/cloudbees/jenkins/support/util/WrapperOutputStream.java
default @Nonnull OutputStream unwrapRecursively() throws IOException {
        OutputStream out = unwrap();
        while (out instanceof WrapperOutputStream) {
            out = ((WrapperOutputStream) out).unwrap();
        }
        return out;
    }
/**
     * Unwraps this stream, recursively descending through any further WrapperOutputStream instances.
     *
     * @return the underlying stream being wrapped
     * @throws IOException if an exception occurs during any unwrap stage
     * @throws IllegalStateException if this stream is closed
     */
Unwraps this stream, recursively descending through any further WrapperOutputStream instances.
@return the underlying stream being wrapped
@throws IOException if an exception occurs during any unwrap stage
@throws IllegalStateException if this stream is closed
Unwraps this stream recursively descending through any further WrapperOutputStream instances . @return the underlying stream being wrapped @throws IOException if an exception occurs during any unwrap stage @throws IllegalStateException if this stream is closed
default @Nonnull OutputStream unwrapRecursively() throws IOException {
        OutputStream out = unwrap();
        while (out instanceof WrapperOutputStream) {
            out = ((WrapperOutputStream) out).unwrap();
        }
        return out;
    }
default @ Nonnull OutputStream unwrapRecursively ( ) throws IOException { OutputStream out = unwrap ( ) ; while ( out instanceof WrapperOutputStream ) { out = ( ( WrapperOutputStream ) out ) . unwrap ( ) ; } return out ; }
Unwraps this stream, recursively descending through any further WrapperOutputStream instances.
Unwraps this stream recursively descending through any further WrapperOutputStream instances .