private static IReadOnlyCollection <string> IndicesPointingToAlias(IConnectionSettingsValues settings, IUrlParameter alias,
                                                                           GetAliasResponse aliasesResponse
                                                                           )
        {
            if (!aliasesResponse.IsValid ||
                !aliasesResponse.Indices.HasAny())
            {
                return(EmptyReadOnly <string> .Collection);
            }

            var aliases = alias.GetString(settings).Split(',');

            var indices = from i in aliasesResponse.Indices
                          where i.Value?.Aliases?.Keys?.Any(key => aliases.Contains(key)) ?? false
                          select settings.Inferrer.IndexName(i.Key);

            return(indices.ToList());
        }
Exemplo n.º 2
0
        private static IReadOnlyDictionary <string, AliasDefinition> AliasesPointingToIndex(IndexName index, GetAliasResponse response)
        {
            if (!response.IsValid || !response.Indices.HasAny())
            {
                return(EmptyReadOnly <string, AliasDefinition> .Dictionary);
            }

            return(response.Indices[index].Aliases);
        }