We're updating the issue view to help you get more done. 

Expose reactive-friendly methods for simple use cases

Description

For now, just implement reactive ways to execute indexing operations (workers) and queries (SearchQuery interface). Don’t worry about the rest for now. In particular, let’s not consider scrolls yet.

The current APIs seem to mostly do the job, returning CompletableFuture for indexing works. For search queries, we could add an executeAsync() method, or rename the current (synchronous) execute to executeAndWait and introduce a new asynchronous execute.

Scrolling, or multi-result operations in general, will be another story. We may have to implement Flow.Publisher, but that requires Java 9 at least. So, I said above... let's not worry about that for now.

Note: it would be interesting to introduce some tests using the stub backend, maybe the POJO mapper, and RxJava2

See branch f2f-2018: https://github.com/hibernate/hibernate-search-6-poc/commit/fb66f9c4196bc06db7742c4df15337bcdb21cc25

Environment

None

Status

Assignee

Unassigned

Reporter

Yoann Rodière

Labels

None

Suitable for new contributors

None

Pull Request

None

Feedback Requested

None

Components

Fix versions

Priority

Major