Exemple #1
0
        // Typed Submit Raw Auto
        public IAutoMapperRequestKey <TSource, TDestination> SubmitRawAutoMapperRequest <TSource, TDestination>
        (
            IMapTypeDefinition srcMapTypeDef,
            IMapTypeDefinition dstMapTypeDef,
            IAutoMapperConfigDetails configuationDetails,
            IConfigureAMapper <TSource, TDestination> mappingConfiguration,
            IHaveAMapperConfigurationStep configStarterForThisRequest
        )
        {
            // Create a MapperBuilder for this request.
            IAutoMapperBuilder <TSource, TDestination> autoMapperBuilder
                = BuildTheAutoMapperBuilder <TSource, TDestination>(configStarterForThisRequest);

            // Create the mapper request.
            IAutoMapperRequestKey <TSource, TDestination> autoMapperRequestKey
                = new AutoMapperRequestKey <TSource, TDestination>
                  (
                      sourceMapTypeDef: srcMapTypeDef,
                      destinationMapTypeDef: dstMapTypeDef,
                      autoMapperConfigDetails: configuationDetails,
                      mappingConfiguration: mappingConfiguration,
                      autoMapperBuilder: autoMapperBuilder);

            IAutoMapperRequestKeyGen response_AutoMapperRequestKey
                = RegisterAutoMapperRequest(autoMapperRequestKey);

            return((IAutoMapperRequestKey <TSource, TDestination>)response_AutoMapperRequestKey);
        }
Exemple #2
0
        // Submit with Configuaration Package Name
        public IAutoMapperRequestKey <TSource, TDestination> SubmitRawAutoMapperRequest <TSource, TDestination>
        (
            IMapTypeDefinition srcMapTypeDef,
            IMapTypeDefinition dstMapTypeDef,
            IAutoMapperConfigDetails configuationDetails,
            string configPackageName,
            IHaveAMapperConfigurationStep configStarterForThisRequest
        )
        {
            if (_mapperConfigurationLookupService == null)
            {
                throw new InvalidOperationException("The AutoMapperService has no MapperConfigurationLookup Service.");
            }

            // Lookup the package name and return a mapping configuration.
            IConfigureAMapper <TSource, TDestination> mappingConfiguration
                = _mapperConfigurationLookupService.GetTheMapperConfig <TSource, TDestination>(configPackageName);

            IAutoMapperRequestKey <TSource, TDestination> result
                = SubmitRawAutoMapperRequest
                  (
                      srcMapTypeDef,
                      dstMapTypeDef,
                      configuationDetails,
                      mappingConfiguration,
                      configStarterForThisRequest
                  );

            return(result);
        }
Exemple #3
0
            // The Typed method for RawAutoMappers
            static IAutoMapperRequestKey <TSource, TDestination> SubmitRawAutoMapperRequest <TSource, TDestination>
            (
                IAutoMapperConfigDetails autoMapperConfigDetails,
                Type sourceType,
                Type destinationType,
                string configPackageName,
                IHaveAMapperConfigurationStep configStarterForThisRequest,
                IAutoMapperService autoMapperProvider
            )
            {
                IMapTypeDefinition srcMapTypeDef = new MapTypeDefinition(typeof(TSource));
                IMapTypeDefinition dstMapTypeDef = new MapTypeDefinition(typeof(TDestination));

                IAutoMapperRequestKey <TSource, TDestination> result
                    = autoMapperProvider.SubmitRawAutoMapperRequest <TSource, TDestination>
                      (
                          srcMapTypeDef: srcMapTypeDef,
                          dstMapTypeDef: dstMapTypeDef,
                          configuationDetails: autoMapperConfigDetails,
                          configPackageName: configPackageName,
                          configStarterForThisRequest: configStarterForThisRequest
                      );

                return(result);
            }
 public AutoMapperRequestKeyGen
 (
     IMapTypeDefinition sourceTypeGenDef,
     IMapTypeDefinition destinationTypeGenDef,
     IAutoMapperConfigDetails autoMapperConfigDetails,
     Func <IAutoMapperRequestKeyGen, IMapper> autoMapperBuilder)
 {
     SourceTypeDef           = sourceTypeGenDef;
     DestinationTypeDef      = destinationTypeGenDef;
     AutoMapperConfigDetails = autoMapperConfigDetails;
     AutoMapperBuilder       = autoMapperBuilder;
 }
Exemple #5
0
        // Gen Submit
        public IAutoMapperRequestKeyGen SubmitRawAutoMapperRequest
        (
            Type sourceType,
            Type destinationType,
            IAutoMapperConfigDetails autoMapperConfigDetails,
            string configPackageName,
            IHaveAMapperConfigurationStep configStarterForThisRequest
        )
        {
            AutoMapperReqSubDelegate mapperRequestSubmitter = GetAutoMapperReqSubDelegate(sourceType, destinationType);
            IAutoMapperRequestKeyGen result = mapperRequestSubmitter(autoMapperConfigDetails, sourceType, destinationType, configPackageName, configStarterForThisRequest, this);

            return(result);
        }
Exemple #6
0
        //public Func<TDestination, TSource> SourceConstructor => MappingConfiguration.SourceConstructor;
        //public Func<TSource, TDestination> DestinationConstructor => MappingConfiguration.DestinationConstructor;

        #endregion

        #region Constructor

        public AutoMapperRequestKey
        (
            IMapTypeDefinition sourceMapTypeDef,
            IMapTypeDefinition destinationMapTypeDef,
            IAutoMapperConfigDetails autoMapperConfigDetails,
            IConfigureAMapper <TSource, TDestination> mappingConfiguration,
            IAutoMapperBuilder <TSource, TDestination> autoMapperBuilder
        )
            : base
            (
                sourceMapTypeDef,
                destinationMapTypeDef,
                autoMapperConfigDetails,
                autoMapperBuilder.AutoMapperBuilderGen
            )
        {
            MappingConfiguration = mappingConfiguration;
        }