Есть ли у Spring Data Elasticsearch функция changeStream, например mon go? Я пытаюсь получить изменения данных. Я имею дело со следующим сценарием: мы создаем объект foo. Этот объект foo может быть обновлен несколькими пользователями. Изменения необходимо отправить в пользовательский интерфейс. В пн go вы можете использовать метод ReactiveMongoTemplate changeStream.
Текущая реализация Пн go (Kotlin)
val options = ChangeStreamOptions.builder()
.filter(Aggregation.newAggregation(Foo::class.java,
listOf(Aggregation.match(
Criteria.where("foo_id").`is`(
6)))
)).returnFullDocumentOnUpdate().build()
return reactiveMongoTemplate.changeStream("foo", options, Foo::class.java)
.map { it.body }
.doOnNext {
print("foo update found $it")
}
.doOnError { print("Error") }