/** * This method <i>may</i> randomize unspecified aspects of the resulting SolrClient. * Tests that do not wish to have any randomized behavior should use the * {@link org.apache.solr.client.solrj.impl.CloudSolrClient.Builder} class directly */ public static CloudSolrClient getCloudSolrClient(String zkHost, boolean shardLeadersOnly, int connectionTimeoutMillis, int socketTimeoutMillis) { if (shardLeadersOnly) { return new CloudSolrClientBuilder(Collections.singletonList(zkHost), Optional.empty()) .sendUpdatesOnlyToShardLeaders() .withConnectionTimeout(connectionTimeoutMillis) .withSocketTimeout(socketTimeoutMillis) .build(); } return new CloudSolrClientBuilder(Collections.singletonList(zkHost), Optional.empty()) .sendUpdatesToAllReplicasInShard() .withConnectionTimeout(connectionTimeoutMillis) .withSocketTimeout(socketTimeoutMillis) .build(); }
/** * This method <i>may</i> randomize unspecified aspects of the resulting SolrClient. * Tests that do not wish to have any randomized behavior should use the * {@link org.apache.solr.client.solrj.impl.CloudSolrClient.Builder} class directly */ public static CloudSolrClient getCloudSolrClient(String zkHost, boolean shardLeadersOnly, HttpClient httpClient, int connectionTimeoutMillis, int socketTimeoutMillis) { if (shardLeadersOnly) { return new CloudSolrClientBuilder(Collections.singletonList(zkHost), Optional.empty()) .withHttpClient(httpClient) .sendUpdatesOnlyToShardLeaders() .withConnectionTimeout(connectionTimeoutMillis) .withSocketTimeout(socketTimeoutMillis) .build(); } return new CloudSolrClientBuilder(Collections.singletonList(zkHost), Optional.empty()) .withHttpClient(httpClient) .sendUpdatesToAllReplicasInShard() .withConnectionTimeout(connectionTimeoutMillis) .withSocketTimeout(socketTimeoutMillis) .build(); }