This is only the method definition.
The method call is actually in the pureFlatFold:
https://github.com/dlecan/play2-war-plugin/pull/235/files#diff-6631fbdeb8bfe668903b928d15152696R100

@viktorklang The chunk is actually read with the play internal Thread pool. I did that on purpose, because:
- the servlet 3.1 async IO is non-blocking. With servlet <= 3.0, it would be an error (like described by @jroper in https://github.com/dlecan/play2-war-plugin/issues/223)
- a slow consumer can slow down the browser (back pressure)
If I read the chunk with the servlet thread, I would accumulate the pureFlatFold function, leading to a stack overflow.

@jroper If I understand you well, the problem is that the servlet container could in theory deliver a very big chunk, leading to OOME. You'd suggest to control the size of the chunk and limit their size to a max?
I checked this PR with tomcat 8.0.3 and jetty 9.1, with big files (a few GB). These 2 containers made the job to cut the input into chunks. Also I do see any issue in practice, but it is true that we rely on the container implementation to limit the size of the chunks.