docs: public static Mono<ByteBuf> collectByteBufStream(Flux<ByteBuf> stream, boolean autoReleaseEnabled) {
          if (autoReleaseEnabled) {
              Mono<ByteBuf> mergedCbb = Mono.using(
                      // Resource supplier
                  () -> {
                      CompositeByteBuf initialCbb = Unpooled.compositeBuffer();
                      return initialCbb;
                  },
                      // source Mono creator
                  (CompositeByteBuf initialCbb) -> {
                      Mono<CompositeByteBuf> reducedCbb = stream.reduce(initialCbb, (CompositeByteBuf currentCbb, ByteBuf nextBb) -> {
                          CompositeByteBuf updatedCbb = currentCbb.addComponent(nextBb.retain());
                          return updatedCbb;
                      });
                      //
                      return reducedCbb
                              .doOnNext((CompositeByteBuf cbb) -> cbb.writerIndex(cbb.capacity()))
                              .filter((CompositeByteBuf cbb) -> cbb.isReadable());
                  },
                      // Resource cleaner
                  (CompositeByteBuf finalCbb) -> finalCbb.release());
              return mergedCbb;
          } else {
              return stream.collect(Unpooled::compositeBuffer,
                  (cbb1, buffer) -> cbb1.addComponent(true, Unpooled.wrappedBuffer(buffer)))
                      .filter((CompositeByteBuf cbb) -> cbb.isReadable())
                      .map(bb -> bb);
          }
      }