@Override
    public Request multipleQueriesAsync(@NonNull Collection<Query> queries, final Client.MultipleQueriesStrategy strategy, @Nullable RequestOptions requestOptions, @NonNull CompletionHandler completionHandler) {
        // A non-mirrored index behaves exactly as an online index.
        if (!mirrored) {
            return super.multipleQueriesAsync(queries, strategy, completionHandler);
        }
        // A mirrored index launches a mixed offline/online request.
        else {
            final List<Query> queriesCopy = new ArrayList<>(queries.size());
            for (Query query: queries) {
                queriesCopy.add(new Query(query));
            }
            return new OnlineOfflineMultipleQueriesRequest(queriesCopy, strategy, requestOptions, completionHandler).start();
        }
    }
@ Override public Request multipleQueriesAsync ( @ NonNull Collection < Query > queries , final Client . MultipleQueriesStrategy strategy , @ Nullable RequestOptions requestOptions , @ NonNull CompletionHandler completionHandler ) { if ( ! mirrored ) { return super . multipleQueriesAsync ( queries , strategy , completionHandler ) ; } else { final List < Query > queriesCopy = new ArrayList < > ( queries . size ( ) ) ; for ( Query query : queries ) { queriesCopy . add ( new Query ( query ) ) ; } return new OnlineOfflineMultipleQueriesRequest ( queriesCopy , strategy , requestOptions , completionHandler ) . start ( ) ; } }
----------------------------------------------------------------------