/// <summary> /// Checks if the mapper repository contains a map and if so, returns it as an out parameter. /// </summary> /// <returns></returns> public bool TryGetMap(IMemberMapper mapper, MemberOptions options, TypePair pair, out ProposedMap map) { MapFuncWrapper action; if (cache.TryGetValue(pair, out action)) { lock (action) { if (action.InUse) { map = null; return(false); } try { action.InUse = true; map = action.CreateMapFunction(mapper, options); } finally { action.InUse = false; } return(true); } } map = null; return(false); }
/// <summary> /// Checks if the mapper repository contains a map and if so, returns it as an out parameter. /// </summary> /// <returns></returns> public bool TryGetMap <TSource, TDestination>(IMemberMapper mapper, MemberOptions options, out ProposedMap <TSource, TDestination> map) { MapFuncWrapper action; if (cache.TryGetValue(new TypePair(typeof(TSource), typeof(TDestination)), out action)) { lock (action) { if (action.InUse) { map = null; return(false); } try { action.InUse = true; map = (ProposedMap <TSource, TDestination>)action.CreateMapFunction(mapper, options); } finally { action.InUse = false; } return(true); } } map = null; return(false); }
public MappingContext(PropertyOrFieldInfo source, PropertyOrFieldInfo dest, int depth, IMemberMapper mapper) { Source = source; Destination = dest; Depth = depth; Mapper = mapper; }
public MembersFeedProcessor(ILog log, IVkResponseMapper responseMapper, IMemberRepository memberRepository, IMemberMapper memberMapper) { this.log = log; this.responseMapper = responseMapper; this.memberRepository = memberRepository; this.memberMapper = memberMapper; }
public CompiledMapGenerator(IMemberMapper mapper, ProposedMap map, MapperOptions options) { this.mapper = mapper; this.proposedMap = map; this.mapProcessor = new MapProposalProcessor(mapper); this.newParameters = new List<ParameterExpression>(); this.options = options; }
public ProposedMap(Type sourceType, Type destinationType, IMemberMapper mapper, MapperOptions options) { this.mapper = mapper; this.ParameterTypes = new List <Type>(); this.options = options; this.sourceType = sourceType; this.destinationType = destinationType; }
public MemberService(IMemberMapper memberMapper, IUserService userService, IUserProfileRepository userProfileRepository, IMemberPersonalize memberPersonalize, IFollowRepository followRepository, ICurrentUserProvider currentUserProvider) { _memberMapper = memberMapper; _userService = userService; _userProfileRepository = userProfileRepository; _memberPersonalize = memberPersonalize; _followRepository = followRepository; _currentUserProvider = currentUserProvider; }
public UserService(IFriendRepository friendRepository, IUserProfileRepository userProfileRepository, IMemberMapper memberMapper, IFollowRepository followRepository, IFollowMapper followMapper, IApiClient apiClient, IHttpContextAccessor httpContextAccessor) { _friendRepository = friendRepository; _userProfileRepository = userProfileRepository; _memberMapper = memberMapper; _followRepository = followRepository; _followMapper = followMapper; _apiClient = apiClient; _httpContextAccessor = httpContextAccessor; }
public StrategyProcessor(DefaultMappingStrategy strategy, IMemberMapper mapper, ConcurrentDictionary <TypePair, ProposedTypeMapping> mappingCache, ConcurrentDictionary <TypePair, CustomMapping> customMappingCache, MapperOptions options) { this.mapper = mapper; this.mappingCache = mappingCache; this.customMappingCache = customMappingCache; this.strategy = strategy; this.options = options; }
/// <summary> /// Initializes a new instance of the <see cref="ProjectHelper"/> class. /// </summary> /// <param name="context">The timesheet database context.</param> /// <param name="repositoryAccessors">The instance of repository accessors.</param> /// <param name="projectMapper">The instance of project model mapper.</param> /// <param name="memberMapper">Instance of member mapper.</param> /// <param name="taskMapper">Instance of task mapper.</param> public ProjectHelper( TimesheetContext context, IRepositoryAccessors repositoryAccessors, IProjectMapper projectMapper, IMemberMapper memberMapper, ITaskMapper taskMapper) { this.context = context; this.repositoryAccessors = repositoryAccessors; this.projectMapper = projectMapper; this.memberMapper = memberMapper; this.taskMapper = taskMapper; }
private MapperOptions GetMapperOptions(IMemberMapper mapper, Type sourceType, Type destinationType) { var destOptions = mapper.Data.TryGetMapperOptions(destinationType, MappingSides.Destination); if (destOptions != null) { return(destOptions); } var sourceOptions = mapper.Data.TryGetMapperOptions(sourceType, MappingSides.Source); return(sourceOptions ?? mapper.Options); }
private void CreateMapper(string profile, IMemberMapper mapper) { lock (lockObj) { var newMappers = new Dictionary <string, IMemberMapper>(mappers); newMappers[profile] = mapper; if (mapper.MapRepository == null) { mapper.MapRepository = this.MapRepository; } Interlocked.CompareExchange(ref mappers, newMappers, mappers); } }
public DefaultProjectionGenerator(IMemberMapper mapper) { this.mapper = mapper; this.processor = new ProjectionProcessor(mapper); }
public IProjectionGenerator GetGenerator(IMemberMapper mapper) { return new DefaultProjectionGenerator(mapper); }
public DefaultMappingStrategy(IMemberMapper mapper) { this.mapper = mapper; this.MemberProviderFactory = new DefaultMemberProviderFactory(); }
public FakeEntityMaterializerSource(IMemberMapper memberMapper) : base(memberMapper) { }
public IMapGenerator GetGenerator(IMemberMapper mapper, ProposedMap proposedMap, MapperOptions options) { return(new CompiledMapGenerator(mapper, proposedMap, options)); }
public SourceTypeModifier(Type t, IMemberMapper mapper) { this.type = t; this.mapper = mapper; }
public MapProposalProcessor(IMemberMapper mapper) { ParametersToReplace = new HashSet <ExpressionTuple>(); Variables = new Dictionary <string, ParameterExpression>(); this.MemberMapper = mapper; }
private void CreateMapper(string profile, IMemberMapper mapper) { lock (lockObj) { var newMappers = new Dictionary<string, IMemberMapper>(mappers); newMappers[profile] = mapper; if (mapper.MapRepository == null) { mapper.MapRepository = this.MapRepository; } Interlocked.CompareExchange(ref mappers, newMappers, mappers); } }
public EntityMaterializerSource([NotNull] IMemberMapper memberMapper) { Check.NotNull(memberMapper, nameof(memberMapper)); _memberMapper = memberMapper; }
/// <summary> /// Initialises a new instance of <see cref="ExtendedEntityMaterializerSource"/>. /// </summary> /// <param name="memberMapper">The member mapper.</param> /// <param name="hooks">The set of entity materializer source hooks.</param> public ExtendedEntityMaterializerSource(IMemberMapper memberMapper, IEnumerable <IEntityMaterializerSourceHook> hooks) : base(memberMapper) { _executor = new FirstResultFuncExecutor <IEntityMaterializerSourceHook>(Ensure.NotNull(hooks, nameof(hooks)).ToArray()); }
public DestinationTypeModifier(IMemberMapper mapper) { this.mapper = mapper; }
public MemberVisitor(IMemberMapper mapper, bool insertNullChecks, IDictionary <string, ParameterExpression> variables) { this.mapper = mapper; this.insertNullChecks = insertNullChecks; this.variables = variables; }
public IProjectionGenerator GetGenerator(IMemberMapper mapper) { return(new DefaultProjectionGenerator(mapper)); }
public EntityMaterializerSource([NotNull] IMemberMapper memberMapper) { _memberMapper = memberMapper; }
public MapperOptions GetOptions(IMemberMapper mapper) { return(new MapperOptions()); }
public DefaultMemberProvider(Type sourceType, Type destinationType, IMemberMapper mapper) { this.mapper = mapper; this.sourceType = sourceType; this.destinationType = destinationType; }
public IMemberProvider GetMemberProvider(Type sourceType, Type destinationType, IMemberMapper mapper) { return new DefaultMemberProvider(sourceType, destinationType, mapper); }
public IMappingStrategy GetMappingStrategy(IMemberMapper mapper) { return(new DefaultMappingStrategy(mapper)); }
public IMemberProvider GetMemberProvider(Type sourceType, Type destinationType, IMemberMapper mapper) { return(new DefaultMemberProvider(sourceType, destinationType, mapper)); }
public IMapGeneratorFactory GetMapGenerator(IMemberMapper mapper) { return(new CompiledMapGeneratorFactory()); }
public ProposedMap(IMemberMapper mapper) { this.mapper = mapper; }
public IProjectionGeneratorFactory GetProjectionGenerator(IMemberMapper mapper) { return(new DefaultProjectionGeneratorFactory()); }
public MembersController(IMemberServices memberService, IMemberMapper memberMapper) { _memberService = memberService; _memberMapper = memberMapper; }
public IMapGenerator GetGenerator(IMemberMapper mapper, ProposedMap proposedMap, MapperOptions options) { return new CompiledMapGenerator(mapper, proposedMap, options); }
/// <summary> /// This API supports the Entity Framework Core infrastructure and is not intended to be used /// directly from your code. This API may change or be removed in future releases. /// </summary> public static void SetMemberMapper([NotNull] this IMutableModel model, [NotNull] IMemberMapper memberMapper) => model[CoreAnnotationNames.MemberMapperAnnotation] = memberMapper;
public ProjectionProcessor(IMemberMapper mapper) { ParametersToReplace = new List<ProjectionExpressionTuple>(); this.MemberMapper = mapper; }