@Override
	public void close() throws IOException {
		if (!this.closed) {
			super.flush();
			super.close();
			this.closed = true;
		}

		if (this.outFile != null) {
			Files.delete(this.outFile.toPath());
		}
	}
Closes the output stream and creates an InputStream on the same data.

@return either a BetterByteArrayOutputStream or buffered FileInputStream,
        depending on what state we are in.
src/main/java/de/gessnerfl/fakesmtp/smtp/io/DeferredFileOutputStream.java