public async Task RunOnce(ILogger logger)
        {
            logger.LogInformation("Begin poll for JobCategories");
            var data = await GetData(_appSettings.SiteFinityJobCategoriesTaxonomyId);

            logger.LogInformation($"Have {data?.Count} job Categorys to save");

            foreach (var jobCategory in data)
            {
                var code = JobCategoryHelper.GetCode(jobCategory.Title);
                // Remove any old job categories that have this title but will have a different code
                var category = await _jobCategoryRepository.GetJobCategory(code);

                if (category == null)
                {
                    category = new JobCategory()
                    {
                        Name  = jobCategory.Title,
                        Texts = new[]
                        {
                            new JobCategoryText()
                            {
                                LanguageCode = "en",
                                Text         = jobCategory.Description,
                                Url          = $"{jobCategory.UrlName}"
                            }
                        },
                        Traits       = jobCategory.Traits.Select(x => x.ToUpper()).ToArray(),
                        PartitionKey = partitionKey
                    };
                }
                else
                {
                    category.Name  = jobCategory.Title;
                    category.Texts = new[]
                    {
                        new JobCategoryText()
                        {
                            LanguageCode = "en",
                            Text         = jobCategory.Description,
                            Url          = $"{jobCategory.UrlName}"
                        }
                    };
                    category.Traits       = jobCategory.Traits.Select(x => x.ToUpper()).ToArray();
                    category.PartitionKey = partitionKey;
                }

                await _jobCategoryRepository.CreateOrUpdateJobCategory(category);
            }

            logger.LogInformation("End poll for JobCategories");
        }
        private async Task CreateJobCategoryQuestionSet(JobCategorySkillMappingResult skillsMapping)
        {
            // Remove any old job categories that have this title but will have a different code
            var category = await _jobCategoryRepository.GetJobCategory(JobCategoryHelper.GetCode(skillsMapping.JobCategory));

            if (category != null)
            {
                category.Skills.Clear();
                category.Skills.AddRange(skillsMapping.SkillMappings);
            }
            else
            {
                _logger.LogError($"Unable to add skills to category {skillsMapping.JobCategory} - the category does not exist");
            }

            await _jobCategoryRepository.CreateOrUpdateJobCategory(category);
        }