private async Task HaveCollectionsChanged()

in src/Microsoft.Extensions.Configuration.AzureAppConfiguration/AzureAppConfigurationProvider.cs [1335:1362]


        private async Task<bool> HaveCollectionsChanged(
            IEnumerable<KeyValueSelector> selectors,
            Dictionary<KeyValueSelector, IEnumerable<MatchConditions>> pageEtags,
            ConfigurationClient client,
            CancellationToken cancellationToken)
        {
            bool haveCollectionsChanged = false;

            foreach (KeyValueSelector selector in selectors)
            {
                if (pageEtags.TryGetValue(selector, out IEnumerable<MatchConditions> matchConditions))
                {
                    await TracingUtils.CallWithRequestTracing(_requestTracingEnabled, RequestType.Watch, _requestTracingOptions,
                        async () => haveCollectionsChanged = await client.HaveCollectionsChanged(
                            selector,
                            matchConditions,
                            _options.ConfigurationSettingPageIterator,
                            cancellationToken).ConfigureAwait(false)).ConfigureAwait(false);
                }

                if (haveCollectionsChanged)
                {
                    return true;
                }
            }

            return haveCollectionsChanged;
        }