INNER CODE UNIT · Java
initSettings
dadoonet/spring-elasticsearch · src/main/java/fr/pilato/spring/elasticsearch/ElasticsearchClientFactoryBean.java:496
private void initSettings() throws Exception {
logger.debug("Initializing indices");
String[] indices = computeIndexNames(autoscan, this.indices, classpathRoot);
// We extract indexes and mappings to manage from mappings definition
if (indices != null) {
// Let's initialize indexes and mappings if needed
for (String index : indices) {
logger.debug("Initializing index {}", index);
createIndex(lowLevelClient, classpathRoot, index, forceIndex);
if (mergeSettings) {
updateSettings(lowLevelClient, classpathRoot, index);
}
}
// Let's wait until the index is properly ready to be used
client.cluster().health(hrb -> hrb.index(Arrays.stream(indices).toList()).waitForStatus(HealthStatus.Yellow));
}
}