code: public Task<DocumentT> findOneAndUpdate(final Bson filter, final Bson update) {
      return dispatcher.dispatchTask(new Callable<DocumentT>() {
        @Override
        public DocumentT call() {
          return proxy.findOneAndUpdate(filter, update);
        }
      });
    }
docs: Finds a document in the collection and performs the given update.
  
  @param filter the query filter
  @param update the update document
  @return a task containing the resulting document