本文整理汇总了Java中org.elasticsearch.cluster.ClusterChangedEvent.metaDataChanged方法的典型用法代码示例。如果您正苦于以下问题:Java ClusterChangedEvent.metaDataChanged方法的具体用法?Java ClusterChangedEvent.metaDataChanged怎么用?Java ClusterChangedEvent.metaDataChanged使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.elasticsearch.cluster.ClusterChangedEvent
的用法示例。
在下文中一共展示了ClusterChangedEvent.metaDataChanged方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: clusterChanged
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void clusterChanged(ClusterChangedEvent event) {
if (!event.metaDataChanged()) {
return;
}
Set<String> newCurrentSchemas = getNewCurrentSchemas(event.state().metaData());
synchronized (schemas) {
Sets.SetView<String> nonBuiltInSchemas = Sets.difference(schemas.keySet(), builtInSchemas.keySet());
Set<String> deleted = Sets.difference(nonBuiltInSchemas, newCurrentSchemas).immutableCopy();
Set<String> added = Sets.difference(newCurrentSchemas, schemas.keySet()).immutableCopy();
for (String deletedSchema : deleted) {
try {
schemas.remove(deletedSchema).close();
} catch (Exception e) {
LOGGER.error(e.getMessage(), e);
}
}
for (String addedSchema : added) {
schemas.put(addedSchema, getCustomSchemaInfo(addedSchema));
}
}
}
示例2: applySettings
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
private void applySettings(ClusterChangedEvent event) {
if (!event.metaDataChanged()) {
return;
}
for (IndexMetaData indexMetaData : event.state().metaData()) {
if (!indicesService.hasIndex(indexMetaData.getIndex())) {
// we only create / update here
continue;
}
// if the index meta data didn't change, no need check for refreshed settings
if (!event.indexMetaDataChanged(indexMetaData)) {
continue;
}
String index = indexMetaData.getIndex();
IndexService indexService = indicesService.indexService(index);
if (indexService == null) {
// already deleted on us, ignore it
continue;
}
IndexSettingsService indexSettingsService = indexService.injector().getInstance(IndexSettingsService.class);
indexSettingsService.refreshSettings(indexMetaData.getSettings());
}
}
示例3: clusterChanged
import org.elasticsearch.cluster.ClusterChangedEvent; //导入方法依赖的package包/类
@Override
public void clusterChanged(ClusterChangedEvent event) {
if (event.metaDataChanged()) {
cache.invalidateAll();
}
}