После записи некоторого обработанного контента в выходной поток мне нужно вернуться к началу потока и записать некоторые метаданные контента. Данные, которые я записываю, очень велики, целых 4 ГБ, и могут быть записаны либо непосредственно в файл, либо в буфер в памяти, в зависимости от различных факторов окружающей среды.
Как я могу реализовать OutputStream, который позволяет мне записывать заголовки после завершения написания контента?