@Override public Mono<ObjectId> store(Publisher<DataBuffer> content, @Nullable String filename, @Nullable String contentType, @Nullable Document metadata) { Assert.notNull(content, "Content must not be null!"); return BinaryStreamAdapters.toAsyncInputStream(content).flatMap(it -> store(it, filename, contentType, metadata)); }
@Override public Mono<ReactiveGridFsResource> getResource(GridFSFile file) { Assert.notNull(file, "GridFSFile must not be null!"); return Mono.fromSupplier(() -> { GridFSDownloadStream stream = getGridFs().openDownloadStream(file.getObjectId()); return new ReactiveGridFsResource(file, BinaryStreamAdapters.toPublisher(stream, dataBufferFactory)); }); }