Допустим, мое приложение должно передавать по сети огромные сжатые файлы размером 100 ГБ + GZIP. Я предполагаю, что эти файлы часто не могут быть переданы в одной попытке из-за проблем с подключением. Поэтому я ищу способ восстановить потоковую передачу с того момента, когда она не удалась. Я знаю, что GZIP из коробки не позволяет потоковую передачу с середины файла. Но я предполагаю, что у него есть состояние, которое можно сериализовать. Затем, имея это состояние, должна быть возможность восстановить считыватель GZIP до состояния, в котором он находился до сбоя, и продолжить потоковую передачу из точки сбоя.
Буду признателен за любой опыт / мысли о том, как этого можно достичь. Я посмотрел на GZIPInputStream и застрял, заканчивая тем, что столкнулся с нативными методами в классе Inflater и читал RFC.