algoliasearch/src/offline/java/com/algolia/search/saas/OfflineIndex.java
public Request searchAsync(@NonNull Query query, @NonNull CompletionHandler completionHandler) {
        final Query queryCopy = new Query(query);
        return getClient().new AsyncTaskRequest(completionHandler) {
            @NonNull
            @Override
            protected JSONObject run() throws AlgoliaException {
                return searchSync(queryCopy);
            }
        }.start();
    }
public Request searchAsync(@NonNull Query query, @NonNull CompletionHandler completionHandler) {
        final Query queryCopy = new Query(query);
        return getClient().new AsyncTaskRequest(completionHandler) {
            @NonNull
            @Override
            protected JSONObject run() throws AlgoliaException {
                return searchSync(queryCopy);
            }
        }.start();
    }
Search inside this index (asynchronously).

@param query Search parameters. May be null to use an empty query.
@param completionHandler The listener that will be notified of the request's outcome.
@return A cancellable request.