private static Map<String, AliasOrIndex> suffixWildcard(Context context, MetaData metaData, String expression) { assert expression.length() >= 2 : "expression [" + expression + "] should have at least a length of 2"; String fromPrefix = expression.substring(0, expression.length() - 1); char[] toPrefixCharArr = fromPrefix.toCharArray(); toPrefixCharArr[toPrefixCharArr.length - 1]++; String toPrefix = new String(toPrefixCharArr); SortedMap<String,AliasOrIndex> subMap = metaData.getAliasAndIndexLookup().subMap(fromPrefix, toPrefix); if (context.getOptions().ignoreAliases()) { return subMap.entrySet().stream() .filter(entry -> entry.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } return subMap; }
private static Map<String, AliasOrIndex> otherWildcard(Context context, MetaData metaData, String expression) { final String pattern = expression; return metaData.getAliasAndIndexLookup() .entrySet() .stream() .filter(e -> context.getOptions().ignoreAliases() == false || e.getValue().isAlias() == false) .filter(e -> Regex.simpleMatch(pattern, e.getKey())) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); }
public static Map<String, AliasOrIndex> matches(Context context, MetaData metaData, String expression) { if (Regex.isMatchAllPattern(expression)) { // Can only happen if the expressions was initially: '-*' if (context.getOptions().ignoreAliases()) { return metaData.getAliasAndIndexLookup().entrySet().stream() .filter(e -> e.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } else { return metaData.getAliasAndIndexLookup(); } } else if (expression.indexOf("*") == expression.length() - 1) { return suffixWildcard(context, metaData, expression); } else { return otherWildcard(context, metaData, expression); } }
@Override public List<String> resolve(Context context, List<String> expressions) { IndicesOptions options = context.getOptions(); MetaData metaData = context.getState().metaData(); if (options.expandWildcardsClosed() == false && options.expandWildcardsOpen() == false) {
IndicesOptions options = context.getOptions(); final boolean failClosed = options.forbidClosedIndices() && options.ignoreUnavailable() == false; continue; } else if (aliasOrIndex.isAlias() && context.getOptions().ignoreAliases()) { if (failNoIndices) { throw aliasesNotSupportedException(expression);
IndicesOptions options = context.getOptions(); final boolean failClosed = options.forbidClosedIndices() && options.ignoreUnavailable() == false; continue; } else if (aliasOrIndex.isAlias() && context.getOptions().ignoreAliases()) { if (failNoIndices) { throw aliasesNotSupportedException(expression);
IndicesOptions options = context.getOptions(); boolean failClosed = options.forbidClosedIndices() && options.ignoreUnavailable() == false; boolean failNoIndices = options.ignoreUnavailable() == false;
IndicesOptions options = context.getOptions(); boolean failClosed = options.forbidClosedIndices() && options.ignoreUnavailable() == false; boolean failNoIndices = options.ignoreUnavailable() == false;
@Override public List<String> resolve(Context context, List<String> expressions) { IndicesOptions options = context.getOptions(); MetaData metaData = context.getState().metaData(); if (options.expandWildcardsClosed() == false && options.expandWildcardsOpen() == false) { return expressions; } if (isEmptyOrTrivialWildcard(expressions)) { return resolveEmptyOrTrivialWildcard(options, metaData); } Set<String> result = innerResolve(context, expressions, options, metaData); if (result == null) { return expressions; } if (result.isEmpty() && !options.allowNoIndices()) { IndexNotFoundException infe = new IndexNotFoundException((String)null); infe.setResources("index_or_alias", expressions.toArray(new String[0])); throw infe; } return new ArrayList<>(result); }
@Override public List<String> resolve(Context context, List<String> expressions) { IndicesOptions options = context.getOptions(); MetaData metaData = context.getState().metaData(); if (options.expandWildcardsClosed() == false && options.expandWildcardsOpen() == false) { return expressions; } if (isEmptyOrTrivialWildcard(expressions)) { return resolveEmptyOrTrivialWildcard(options, metaData, true); } Set<String> result = innerResolve(context, expressions, options, metaData); if (result == null) { return expressions; } if (result.isEmpty() && !options.allowNoIndices()) { IndexNotFoundException infe = new IndexNotFoundException((String)null); infe.setResources("index_or_alias", expressions.toArray(new String[0])); throw infe; } return new ArrayList<>(result); }
@Override public List<String> resolve(Context context, List<String> expressions) { IndicesOptions options = context.getOptions(); MetaData metaData = context.getState().metaData(); if (options.expandWildcardsClosed() == false && options.expandWildcardsOpen() == false) { return expressions; } if (isEmptyOrTrivialWildcard(expressions)) { return resolveEmptyOrTrivialWildcard(options, metaData); } Set<String> result = innerResolve(context, expressions, options, metaData); if (result == null) { return expressions; } if (result.isEmpty() && !options.allowNoIndices()) { IndexNotFoundException infe = new IndexNotFoundException((String)null); infe.setResources("index_or_alias", expressions.toArray(new String[0])); throw infe; } return new ArrayList<>(result); }
public static Map<String, AliasOrIndex> matches(Context context, MetaData metaData, String expression) { if (Regex.isMatchAllPattern(expression)) { // Can only happen if the expressions was initially: '-*' if (context.getOptions().ignoreAliases()) { return metaData.getAliasAndIndexLookup().entrySet().stream() .filter(e -> e.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } else { return metaData.getAliasAndIndexLookup(); } } else if (expression.indexOf("*") == expression.length() - 1) { return suffixWildcard(context, metaData, expression); } else { return otherWildcard(context, metaData, expression); } }
public static Map<String, AliasOrIndex> matches(Context context, MetaData metaData, String expression) { if (Regex.isMatchAllPattern(expression)) { // Can only happen if the expressions was initially: '-*' if (context.getOptions().ignoreAliases()) { return metaData.getAliasAndIndexLookup().entrySet().stream() .filter(e -> e.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } else { return metaData.getAliasAndIndexLookup(); } } else if (expression.indexOf("*") == expression.length() - 1) { return suffixWildcard(context, metaData, expression); } else { return otherWildcard(context, metaData, expression); } }
private static Map<String, AliasOrIndex> suffixWildcard(Context context, MetaData metaData, String expression) { assert expression.length() >= 2 : "expression [" + expression + "] should have at least a length of 2"; String fromPrefix = expression.substring(0, expression.length() - 1); char[] toPrefixCharArr = fromPrefix.toCharArray(); toPrefixCharArr[toPrefixCharArr.length - 1]++; String toPrefix = new String(toPrefixCharArr); SortedMap<String,AliasOrIndex> subMap = metaData.getAliasAndIndexLookup().subMap(fromPrefix, toPrefix); if (context.getOptions().ignoreAliases()) { return subMap.entrySet().stream() .filter(entry -> entry.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } return subMap; }
private static Map<String, AliasOrIndex> suffixWildcard(Context context, MetaData metaData, String expression) { assert expression.length() >= 2 : "expression [" + expression + "] should have at least a length of 2"; String fromPrefix = expression.substring(0, expression.length() - 1); char[] toPrefixCharArr = fromPrefix.toCharArray(); toPrefixCharArr[toPrefixCharArr.length - 1]++; String toPrefix = new String(toPrefixCharArr); SortedMap<String,AliasOrIndex> subMap = metaData.getAliasAndIndexLookup().subMap(fromPrefix, toPrefix); if (context.getOptions().ignoreAliases()) { return subMap.entrySet().stream() .filter(entry -> entry.getValue().isAlias() == false) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); } return subMap; }
private static Map<String, AliasOrIndex> otherWildcard(Context context, MetaData metaData, String expression) { final String pattern = expression; return metaData.getAliasAndIndexLookup() .entrySet() .stream() .filter(e -> context.getOptions().ignoreAliases() == false || e.getValue().isAlias() == false) .filter(e -> Regex.simpleMatch(pattern, e.getKey())) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); }
private static Map<String, AliasOrIndex> otherWildcard(Context context, MetaData metaData, String expression) { final String pattern = expression; return metaData.getAliasAndIndexLookup() .entrySet() .stream() .filter(e -> context.getOptions().ignoreAliases() == false || e.getValue().isAlias() == false) .filter(e -> Regex.simpleMatch(pattern, e.getKey())) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue)); }
IndicesOptions options = context.getOptions(); final boolean failClosed = options.forbidClosedIndices() && options.ignoreUnavailable() == false; continue; } else if (aliasOrIndex.isAlias() && context.getOptions().ignoreAliases()) { if (failNoIndices) { throw aliasesNotSupportedException(expression);
@Override public List<String> resolve(Context context, List<String> expressions) { IndicesOptions options = context.getOptions(); MetaData metaData = context.getState().metaData(); if (options.expandWildcardsClosed() == false && options.expandWildcardsOpen() == false) { return expressions; } if (isEmptyOrTrivialWildcard(expressions)) { return resolveEmptyOrTrivialWildcard(options, metaData); } Set<String> result = innerResolve(context, expressions, options, metaData); if (result == null) { return expressions; } if (result.isEmpty() && !options.allowNoIndices()) { IndexNotFoundException infe = new IndexNotFoundException((String)null); infe.setResources("index_or_alias", expressions.toArray(new String[0])); throw infe; } return new ArrayList<>(result); }