private static Settings filterSettings(Iterable<String> patterns, Settings settings) { Settings.Builder builder = Settings.builder().put(settings); List<String> simpleMatchPatternList = new ArrayList<>(); for (String pattern : patterns) { if (Regex.isSimpleMatchPattern(pattern)) { simpleMatchPatternList.add(pattern); } else { builder.remove(pattern); } } if (!simpleMatchPatternList.isEmpty()) { String[] simpleMatchPatterns = simpleMatchPatternList.toArray(new String[simpleMatchPatternList.size()]); builder.keys().removeIf(key -> Regex.simpleMatch(simpleMatchPatterns, key)); } return builder.build(); } }
private static boolean applyDeletes(Set<String> deletes, Settings.Builder builder, Predicate<String> canRemove) { boolean changed = false; for (String entry : deletes) { Set<String> keysToRemove = new HashSet<>(); Set<String> keySet = builder.keys(); for (String key : keySet) { if (Regex.simpleMatch(entry, key) && canRemove.test(key)) { // we have to re-check with canRemove here since we might have a wildcard expression foo.* that matches // dynamic as well as static settings if that is the case we might remove static settings since we resolve the // wildcards late keysToRemove.add(key); } } for (String key : keysToRemove) { builder.remove(key); changed = true; } } return changed; }
/** * Finish preparing settings by replacing forced settings, prompts, and any defaults that need to be added. * The provided terminal is used to prompt for settings needing to be replaced. */ private static void finalizeSettings(Settings.Builder output, Terminal terminal) { // allow to force set properties based on configuration of the settings provided List<String> forcedSettings = new ArrayList<>(); for (String setting : output.keys()) { if (setting.startsWith("force.")) { forcedSettings.add(setting); } } for (String forcedSetting : forcedSettings) { String value = output.remove(forcedSetting); output.put(forcedSetting.substring("force.".length()), value); } output.replacePropertyPlaceholders(); // put the cluster name if (output.get(ClusterName.CLUSTER_NAME_SETTING.getKey()) == null) { output.put(ClusterName.CLUSTER_NAME_SETTING.getKey(), ClusterName.CLUSTER_NAME_SETTING.getDefault(Settings.EMPTY).value()); } replacePromptPlaceholders(output, terminal); }
|| s.startsWith("index.sort.") || s.equals("index.mapping.single_type")) && indexSettingsBuilder.keys().contains(s) == false; builder.put(sourceMetaData.getSettings().filter(sourceSettingsPredicate));
if (indexSettingsBuilder.keys().contains(key)) { continue; (s) -> (s.startsWith("index.similarity.") || s.startsWith("index.analysis.") || s.startsWith("index.sort.") || s.equals("index.mapping.single_type") || s.equals("index.soft_deletes.enabled")) && indexSettingsBuilder.keys().contains(s) == false; builder.put(sourceMetaData.getSettings().filter(sourceSettingsPredicate));
for (String setting : randomSettingsBuilder.keys()) { assertThat("non index. prefix setting set on index template, its a node setting...", setting, startsWith("index."));
private static void replacePromptPlaceholders(Settings.Builder settings, Terminal terminal) { List<String> secretToPrompt = new ArrayList<>(); List<String> textToPrompt = new ArrayList<>(); for (String key : settings.keys()) { switch (settings.get(key)) { case SECRET_PROMPT_VALUE:
private static void replacePromptPlaceholders(Settings.Builder settings, Terminal terminal) { List<String> secretToPrompt = new ArrayList<>(); List<String> textToPrompt = new ArrayList<>(); for (String key : settings.keys()) { switch (settings.get(key)) { case SECRET_PROMPT_VALUE:
/** * Finish preparing settings by replacing forced settings, prompts, and any defaults that need to be added. * The provided terminal is used to prompt for settings needing to be replaced. */ private static void finalizeSettings(Settings.Builder output, Terminal terminal) { // allow to force set properties based on configuration of the settings provided List<String> forcedSettings = new ArrayList<>(); for (String setting : output.keys()) { if (setting.startsWith("force.")) { forcedSettings.add(setting); } } for (String forcedSetting : forcedSettings) { String value = output.remove(forcedSetting); output.put(forcedSetting.substring("force.".length()), value); } output.replacePropertyPlaceholders(); // put the cluster name if (output.get(ClusterName.CLUSTER_NAME_SETTING.getKey()) == null) { output.put(ClusterName.CLUSTER_NAME_SETTING.getKey(), ClusterName.CLUSTER_NAME_SETTING.getDefault(Settings.EMPTY).value()); } replacePromptPlaceholders(output, terminal); }
/** * Finish preparing settings by replacing forced settings, prompts, and any defaults that need to be added. * The provided terminal is used to prompt for settings needing to be replaced. */ private static void finalizeSettings(Settings.Builder output, Terminal terminal) { // allow to force set properties based on configuration of the settings provided List<String> forcedSettings = new ArrayList<>(); for (String setting : output.keys()) { if (setting.startsWith("force.")) { forcedSettings.add(setting); } } for (String forcedSetting : forcedSettings) { String value = output.remove(forcedSetting); output.put(forcedSetting.substring("force.".length()), value); } output.replacePropertyPlaceholders(); // put the cluster name if (output.get(ClusterName.CLUSTER_NAME_SETTING.getKey()) == null) { output.put(ClusterName.CLUSTER_NAME_SETTING.getKey(), ClusterName.CLUSTER_NAME_SETTING.getDefault(Settings.EMPTY).value()); } replacePromptPlaceholders(output, terminal); }
private static Settings filterSettings(Iterable<String> patterns, Settings settings) { Settings.Builder builder = Settings.builder().put(settings); List<String> simpleMatchPatternList = new ArrayList<>(); for (String pattern : patterns) { if (Regex.isSimpleMatchPattern(pattern)) { simpleMatchPatternList.add(pattern); } else { builder.remove(pattern); } } if (!simpleMatchPatternList.isEmpty()) { String[] simpleMatchPatterns = simpleMatchPatternList.toArray(new String[simpleMatchPatternList.size()]); Iterator<String> iterator = builder.keys().iterator(); while (iterator.hasNext()) { String key = iterator.next(); if (Regex.simpleMatch(simpleMatchPatterns, key)) { iterator.remove(); } } } return builder.build(); } }
private static boolean applyDeletes(Set<String> deletes, Settings.Builder builder, Predicate<String> canRemove) { boolean changed = false; for (String entry : deletes) { Set<String> keysToRemove = new HashSet<>(); Set<String> keySet = builder.keys(); for (String key : keySet) { if (Regex.simpleMatch(entry, key) && canRemove.test(key)) { // we have to re-check with canRemove here since we might have a wildcard expression foo.* that matches // dynamic as well as static settings if that is the case we might remove static settings since we resolve the // wildcards late keysToRemove.add(key); } } for (String key : keysToRemove) { builder.remove(key); changed = true; } } return changed; }
private static Settings filterSettings(Iterable<String> patterns, Settings settings) { Settings.Builder builder = Settings.builder().put(settings); List<String> simpleMatchPatternList = new ArrayList<>(); for (String pattern : patterns) { if (Regex.isSimpleMatchPattern(pattern)) { simpleMatchPatternList.add(pattern); } else { builder.remove(pattern); } } if (!simpleMatchPatternList.isEmpty()) { String[] simpleMatchPatterns = simpleMatchPatternList.toArray(new String[simpleMatchPatternList.size()]); Iterator<String> iterator = builder.keys().iterator(); while (iterator.hasNext()) { String key = iterator.next(); if (Regex.simpleMatch(simpleMatchPatterns, key)) { iterator.remove(); } } } return builder.build(); } }
private static boolean applyDeletes(Set<String> deletes, Settings.Builder builder, Predicate<String> canRemove) { boolean changed = false; for (String entry : deletes) { Set<String> keysToRemove = new HashSet<>(); Set<String> keySet = builder.keys(); for (String key : keySet) { if (Regex.simpleMatch(entry, key) && canRemove.test(key)) { // we have to re-check with canRemove here since we might have a wildcard expression foo.* that matches // dynamic as well as static settings if that is the case we might remove static settings since we resolve the // wildcards late keysToRemove.add(key); } } for (String key : keysToRemove) { builder.remove(key); changed = true; } } return changed; }
@Override public Settings getValue(Settings current, Settings previous) { Settings.Builder builder = Settings.builder(); builder.put(current.filter(loggerPredicate)); for (String key : previous.keySet()) { if (loggerPredicate.test(key) && builder.keys().contains(key) == false) { if (Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).exists(settings) == false) { builder.putNull(key); } else { builder.put(key, Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).get(settings).toString()); } } } return builder.build(); }
@Override public Settings getValue(Settings current, Settings previous) { Settings.Builder builder = Settings.builder(); builder.put(current.filter(loggerPredicate)); for (String key : previous.keySet()) { if (loggerPredicate.test(key) && builder.keys().contains(key) == false) { if (Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).exists(settings) == false) { builder.putNull(key); } else { builder.put(key, Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).get(settings).toString()); } } } return builder.build(); }
if (indexSettingsBuilder.keys().contains(key)) { continue; (s) -> (s.startsWith("index.similarity.") || s.startsWith("index.analysis.") || s.startsWith("index.sort.") || s.equals("index.mapping.single_type") || s.equals("index.soft_deletes.enabled")) && indexSettingsBuilder.keys().contains(s) == false; builder.put(sourceMetaData.getSettings().filter(sourceSettingsPredicate));
private static void replacePromptPlaceholders(Settings.Builder settings, Terminal terminal) { List<String> secretToPrompt = new ArrayList<>(); List<String> textToPrompt = new ArrayList<>(); for (String key : settings.keys()) { switch (settings.get(key)) { case SECRET_PROMPT_VALUE:
@Override public Settings getValue(Settings current, Settings previous) { Settings.Builder builder = Settings.builder(); builder.put(current.filter(loggerPredicate)); for (String key : previous.keySet()) { if (loggerPredicate.test(key) && builder.keys().contains(key) == false) { if (Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).exists(settings) == false) { builder.putNull(key); } else { builder.put(key, Loggers.LOG_LEVEL_SETTING.getConcreteSetting(key).get(settings).toString()); } } } return builder.build(); }