Home > Software design >  Convert Flux<DataBuffer> into Flux<ByteBuffer>
Convert Flux<DataBuffer> into Flux<ByteBuffer>

Time:10-15

I am working on spring webflux file upload. From the controller I want to upload the file on amazon S3 bucket. So in the controller I received following object

org.springframework.http.codec.multipart.FilePart

And from the FilePart.content() I can get

reactor.core.publisher.Flux<org.springframework.core.io.buffer.DataBuffer>

My question is how can I convert this Flux<DataBuffer> into Flux<ByteBuffer>. I mean into the following object

Flux<java.nio.ByteBuffer>

CodePudding user response:

You can simply use the org.springframework.core.io.buffer.DataBuffer#asByteBuffer():

Flux<java.nio.ByteBuffer> buffers = filePart.content()
    .map(DataBuffer::asByteBuffer);
  • Related