예제 #1
0
        static async Task <GroupLink[]> GetGroupLinks(CancellationToken cancellationToken)
        {
            _logger.Info("Downloading group links...");
            var groupLinks = await _giasApiClient.DownloadGroupLinksAsync(cancellationToken);

            _logger.Info($"Downloaded {groupLinks.Length} group links");
            return(groupLinks);
        }
예제 #2
0
        public async Task DownloadAllGiasDataToCacheAsync(CancellationToken cancellationToken)
        {
            var pointInTime = DateTime.UtcNow.Date;

            var groupLinks = await _giasApiClient.DownloadGroupLinksAsync(cancellationToken);

            var groups = await DownloadGroupsToCacheAsync(pointInTime, cancellationToken);

            var establishments = await DownloadEstablishmentsToCacheAsync(pointInTime, groupLinks, cancellationToken);

            var localAuthorities = await ProcessEstablishmentLocalAuthoritiesToCacheAsync(pointInTime, establishments, cancellationToken);

            await EnqueueGroupsAsync(groups, establishments, cancellationToken);
            await EnqueueLocalAuthoritiesAsync(localAuthorities, establishments, cancellationToken);
        }