StreamingFrameParser now takes a BufferedReader as when it closed the reader it was creating itself it was closing the InputStream and thus stopping writes on the same socket