Example #1
0
        private static void UpdateNamesByGemeentenamen(MunicipalityLatestItem syndicationItem, IReadOnlyCollection <GeografischeNaam> gemeentenamen)
        {
            if (gemeentenamen == null || !gemeentenamen.Any())
            {
                return;
            }

            foreach (var naam in gemeentenamen)
            {
                switch (naam.Taal)
                {
                default:
                case Taal.NL:
                    syndicationItem.NameDutch       = naam.Spelling;
                    syndicationItem.NameDutchSearch = naam.Spelling.RemoveDiacritics();
                    break;

                case Taal.FR:
                    syndicationItem.NameFrench       = naam.Spelling;
                    syndicationItem.NameFrenchSearch = naam.Spelling.RemoveDiacritics();
                    break;

                case Taal.DE:
                    syndicationItem.NameGerman       = naam.Spelling;
                    syndicationItem.NameGermanSearch = naam.Spelling.RemoveDiacritics();
                    break;

                case Taal.EN:
                    syndicationItem.NameEnglish       = naam.Spelling;
                    syndicationItem.NameEnglishSearch = naam.Spelling.RemoveDiacritics();
                    break;
                }
            }
        }
Example #2
0
        private static async Task AddSyndicationItemEntry(AtomEntry <SyndicationItem <Municipality> > entry, SyndicationContext context, CancellationToken ct)
        {
            var municipalityLatestItem = await context
                                         .MunicipalityLatestItems
                                         .FindAsync(entry.Content.Object.Id);

            if (municipalityLatestItem == null)
            {
                municipalityLatestItem = new MunicipalityLatestItem
                {
                    MunicipalityId  = entry.Content.Object.Id,
                    NisCode         = entry.Content.Object.Identificator?.ObjectId,
                    Version         = entry.Content.Object.Identificator?.Versie,
                    Position        = long.Parse(entry.FeedEntry.Id),
                    PrimaryLanguage = entry.Content.Object.OfficialLanguages.FirstOrDefault()
                };

                UpdateNamesByGemeentenamen(municipalityLatestItem, entry.Content.Object.MunicipalityNames);

                await context
                .MunicipalityLatestItems
                .AddAsync(municipalityLatestItem, ct);
            }
            else
            {
                municipalityLatestItem.NisCode         = entry.Content.Object.Identificator?.ObjectId;
                municipalityLatestItem.Version         = entry.Content.Object.Identificator?.Versie;
                municipalityLatestItem.Position        = long.Parse(entry.FeedEntry.Id);
                municipalityLatestItem.PrimaryLanguage = entry.Content.Object.OfficialLanguages.FirstOrDefault();

                UpdateNamesByGemeentenamen(municipalityLatestItem, entry.Content.Object.MunicipalityNames);
            }
        }