private static IDictionary BuildTypeMappingDictionary()

in src/DeloitteDigital.Atlas/Mapping/MappingUtil.cs [64:80]


        private static IDictionary<string, TTypeMapper> BuildTypeMappingDictionary<TTypeMapper>()
            where TTypeMapper : class, ITypeMapper
        {
            var mappingDictionary = new Dictionary<string, TTypeMapper>();
            var mappingClasses = GetClassesImplementingInterface<TTypeMapper>();

            foreach (var mappingClass in mappingClasses)
            {
                var instance = Activator.CreateInstance(mappingClass) as TTypeMapper;
                if (instance != null && !mappingDictionary.ContainsKey(instance.MappingTypeKey))
                {
                    mappingDictionary.Add(instance.MappingTypeKey, instance);
                }
            }

            return mappingDictionary;
        }