Close input stream on CloudEventHttpMessageReader (#421) (#434)

Signed-off-by: Joke de Buhr <joke.debuhr@eventim.de>
Signed-off-by: Pierangelo Di Pilato <pdipilat@redhat.com>

Co-authored-by: Joke de Buhr <joke@xckk.de>
This commit is contained in:
Pierangelo Di Pilato 2021-12-21 11:50:02 +01:00 committed by GitHub
parent 3cd746d3bc
commit 043d58a4a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 2 deletions

View File

@ -28,6 +28,7 @@ import org.springframework.util.StreamUtils;
import reactor.core.publisher.Flux; import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono; import reactor.core.publisher.Mono;
import java.io.InputStream;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -62,8 +63,8 @@ public class CloudEventHttpMessageReader implements HttpMessageReader<CloudEvent
Map<String, Object> hints) { Map<String, Object> hints) {
HttpHeaders headers = message.getHeaders(); HttpHeaders headers = message.getHeaders();
Mono<byte[]> body = DataBufferUtils.join(message.getBody()).map(buffer -> { Mono<byte[]> body = DataBufferUtils.join(message.getBody()).map(buffer -> {
try { try (InputStream inputStream = buffer.asInputStream(true)) {
return StreamUtils.copyToByteArray(buffer.asInputStream(true)); return StreamUtils.copyToByteArray(inputStream);
} }
catch (Exception e) { catch (Exception e) {
throw new IllegalArgumentException(e); throw new IllegalArgumentException(e);