private async Task <IReadOnlyCollection <Uri> > GetResourceUrlsAsync(
            OperationType type,
            IReadOnlyCollection <string> resourceIds,
            CancellationToken cancellationToken)
        {
            switch (type)
            {
            case OperationType.Reindex:
                List <int> tagKeys = resourceIds?.Select(x => int.Parse(x, CultureInfo.InvariantCulture)).ToList();

                IReadOnlyCollection <ExtendedQueryTagStoreEntry> tagPaths = Array.Empty <ExtendedQueryTagStoreEntry>();
                if (tagKeys?.Count > 0)
                {
                    tagPaths = await _extendedQueryTagStore.GetExtendedQueryTagsAsync(tagKeys, cancellationToken);
                }

                return(tagPaths.Select(x => _urlResolver.ResolveQueryTagUri(x.Path)).ToList());

            default:
                throw new ArgumentOutOfRangeException(nameof(type));
            }
        }