code: private void swapBuffers() throws IOException
     {
        byte[] data = ((ByteArrayOutputStream)out).toByteArray();
        fileBuffer = PrivilegedFileHelper.createTempFile("decoderBuffer", ".tmp");
        PrivilegedFileHelper.deleteOnExit(fileBuffer);
        out = new BufferedOutputStream(PrivilegedFileHelper.fileOutputStream(fileBuffer), bufferSize);
        out.write(data);
     }
docs: Swap in-memory buffer with file.
  
  @exception IOException
  if an I/O error occurs.