## RxJava 2 API

The Mongo client provides an Rxified version of the original API.

### Creating an Rxified client

To create an Rxified Mongo client, make sure to import the `MongoClient` class. Then use one of the `create` methods to get an instance:

    MongoClient client = MongoClient.createShared(vertx, config);

### Finding documents in batches

A `ReadStream` can be converted to a `Flowable`, which is handy when you have to deal with large data sets:

    JsonObject query = new JsonObject()
      .put("author", "J. R. R. Tolkien");

    ReadStream<JsonObject> books = mongoClient.findBatch("book", query);

    // Convert the stream to a Flowable
    Flowable<JsonObject> flowable = books.toFlowable();

    flowable.subscribe(doc -> {
      System.out.println("Found doc: " + doc.encodePrettily());
    }, throwable -> {
      throwable.printStackTrace();
    }, () -> {
      System.out.println("End of research");
    });