algoliasearch/src/offline/java/com/algolia/search/saas/MirroredIndex.java
@Override
    public Request searchForFacetValuesAsync(@NonNull String facetName, @NonNull String text, @Nullable Query query, @Nullable RequestOptions requestOptions, @NonNull final CompletionHandler completionHandler) {
        // A non-mirrored index behaves exactly as an online index.
        if (!mirrored) {
            return super.searchForFacetValuesAsync(facetName, text, query, requestOptions, completionHandler);
        }
        // A mirrored index launches a mixed offline/online request.
        else {
            final Query queryCopy = query != null ? new Query(query) : null;
            return new MixedFacetSearchRequest(facetName, text, queryCopy, requestOptions, completionHandler).start();
        }
    }
@Override
    public Request searchForFacetValuesAsync(@NonNull String facetName, @NonNull String text, @Nullable Query query, @Nullable RequestOptions requestOptions, @NonNull final CompletionHandler completionHandler) {
        // A non-mirrored index behaves exactly as an online index.
        if (!mirrored) {
            return super.searchForFacetValuesAsync(facetName, text, query, requestOptions, completionHandler);
        }
        // A mirrored index launches a mixed offline/online request.
        else {
            final Query queryCopy = query != null ? new Query(query) : null;
            return new MixedFacetSearchRequest(facetName, text, queryCopy, requestOptions, completionHandler).start();
        }
    }
----------------------------------------------------------------------