final Pooled<ByteBuffer> resource = exchange.getConnection().getBufferPool().allocate();
final ByteBuffer buf = resource.getResource();
try {
while (!parser.isComplete()) {
buf.clear();
requestChannel.awaitReadable();
int c = requestChannel.read(buf);
buf.flip();
if (c == -1) {
throw UndertowMessages.MESSAGES.connectionTerminatedReadingMultiPartData();
} else if (c != 0) {