using System.Collections.Concurrent; using Umbraco.Core.Models; using Umbraco.Core.Models.Rdbms; using Umbraco.Core.Persistence.Repositories; namespace Umbraco.Core.Persistence.Mappers { [MapperFor(typeof(IDomain))] [MapperFor(typeof(UmbracoDomain))] public sealed class DomainMapper : BaseMapper { private static readonly ConcurrentDictionary PropertyInfoCacheInstance = new ConcurrentDictionary(); public DomainMapper() { BuildMap(); } internal override ConcurrentDictionary PropertyInfoCache { get { return PropertyInfoCacheInstance; } } internal override void BuildMap() { CacheMap(src => src.Id, dto => dto.Id); CacheMap(src => src.RootContentId, dto => dto.RootStructureId); CacheMap(src => src.LanguageId, dto => dto.DefaultLanguage); CacheMap(src => src.DomainName, dto => dto.DomainName); } } }