private IInputReader GetReader(Type type, string profile) { var key = new MapperKey(type, profile); if (!profiledReaderCache.TryGetValue(key, out var reader)) { reader = profiledReaderCache.AddIfNotExist(key, CreateReader); } return(reader); }
private IOutputWriter GetWriter(Type type, string profile) { var key = new MapperKey(type, profile); if (!profiledWriterCache.TryGetValue(key, out var writer)) { writer = profiledWriterCache.AddIfNotExist(key, CreateWriter); } return(writer); }
public IObjectMappingData <TNewSource, TNewTarget> As <TNewSource, TNewTarget>() where TNewSource : class where TNewTarget : class { return(new ObjectMappingData <TNewSource, TNewTarget>( Source as TNewSource, Target as TNewTarget, GetEnumerableIndex(), MapperKey.WithTypes <TNewSource, TNewTarget>(), MappingContext, this, _parent)); }
private IInputReader CreateReader(MapperKey key) { var readerType = ResolveReaderType(key.Type); return((IInputReader)Activator.CreateInstance(readerType, config, key.Profile)); }
/// <summary> /// Initializes a new instance of the <see cref="MapperDescription" /> class. /// </summary> /// <param name="mapper">The mapper.</param> /// <param name="key">The key.</param> /// <param name="id">The id.</param> public MapperDescription(MapperBase mapper, MapperKey key, int id) { Mapper = mapper; Key = key; Id = id; }
private IOutputWriter CreateWriter(MapperKey key) { var writerType = ResolveWriterType(key.Type); return((IOutputWriter)Activator.CreateInstance(writerType, config, key.Profile)); }