public DefaultConstructorSelector(IConstructorFinder constructorFinder, IConstructorSorter constructorSorter) { Requires.NotNull(constructorFinder, "constructorFinder"); Requires.NotNull(constructorSorter, "constructorSorter"); _constructorFinder = constructorFinder; _constructorSorter = constructorSorter; }
/// <summary> /// Create an activator for the provided type. /// </summary> /// <param name="implementationType">Type to activate.</param> /// <param name="constructorFinder">Constructor finder.</param> /// <param name="constructorSelector">Constructor selector.</param> /// <param name="configuredParameters">Parameters configured explicitly for this instance.</param> /// <param name="configuredProperties">Properties configured explicitly for this instance.</param> public ReflectionActivator( Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable <Parameter> configuredParameters, IEnumerable <Parameter> configuredProperties) : base(implementationType) { if (constructorFinder == null) { throw new ArgumentNullException(nameof(constructorFinder)); } if (constructorSelector == null) { throw new ArgumentNullException(nameof(constructorSelector)); } if (configuredParameters == null) { throw new ArgumentNullException(nameof(configuredParameters)); } if (configuredProperties == null) { throw new ArgumentNullException(nameof(configuredProperties)); } _implementationType = implementationType; ConstructorFinder = constructorFinder; ConstructorSelector = constructorSelector; _configuredProperties = configuredProperties; _defaultParameters = configuredParameters.Concat( new Parameter[] { new AutowiringParameter(), new DefaultValueParameter() }); }
/// <summary> /// Initializes a new instance of the <see cref="ReflectionActivatorData"/> class. /// </summary> /// <param name="implementer">Type that will be activated.</param> public ReflectionActivatorData(Type implementer) { ImplementationType = implementer; _constructorFinder = DefaultConstructorFinder; _constructorSelector = DefaultConstructorSelector; }
public ReflectionActivator(Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable <Parameter> configuredParameters, IEnumerable <Parameter> configuredProperties) : base(Enforce.ArgumentNotNull <Type>(implementationType, "implementationType")) { this._implementationType = implementationType; this._constructorFinder = Enforce.ArgumentNotNull <IConstructorFinder>(constructorFinder, "constructorFinder"); this._constructorSelector = Enforce.ArgumentNotNull <IConstructorSelector>(constructorSelector, "constructorSelector"); this._configuredParameters = Enforce.ArgumentNotNull <IEnumerable <Parameter> >(configuredParameters, "configuredParameters"); this._configuredProperties = Enforce.ArgumentNotNull <IEnumerable <Parameter> >(configuredProperties, "configuredProperties"); }
public ServiceConstructorProvider(IConstructorInfoListGenerator infoListGenerator, IConstructorListGenerator listGenerator, IServiceHasConstructorParametersChecker hasConstructorParametersChecker, IConstructorFinder constructorFinder, IConstructorParametersGenerator parametersGenerator, IConstructorProvider constructorProvider) { InfoListGenerator = infoListGenerator; ListGenerator = listGenerator; HasConstructorParametersChecker = hasConstructorParametersChecker; ConstructorFinder = constructorFinder; ParametersGenerator = parametersGenerator; ConstructorProvider = constructorProvider; }
public ConstructorInstanceCreator(IConstructorInvoker constructorInvoker, IConstructorParametersGenerator parametersGenerator, IConstructorProvider constructorProvider, IConstructorInfoListGenerator constructorInfoListGenerator, IConstructorFinder constructorFinder, IConstructorListGenerator constructorListGenerator, IParametersValuesExtractor parametersValuesExtractor) { ConstructorInvoker = constructorInvoker; ParametersGenerator = parametersGenerator; ConstructorProvider = constructorProvider; ConstructorInfoListGenerator = constructorInfoListGenerator; ConstructorFinder = constructorFinder; ConstructorListGenerator = constructorListGenerator; ParametersValuesExtractor = parametersValuesExtractor; }
public void SetConstructorFinder(IConstructorFinder finder) { if (Mapper != null) { throw MapCompilerException.MapAndCompilerSpecified(); } if (ConstructorFinder != null) { throw new InvalidOperationException("Attempt to specify two constructor finders. You may only have one constructor finder per map attempt."); } ConstructorFinder = finder; }
FindConstructorsWith <TLimit, TReflectionActivatorData, TStyle>( this IRegistrationBuilder <TLimit, TReflectionActivatorData, TStyle> registration, IConstructorFinder constructorFinder) where TReflectionActivatorData : ReflectionActivatorData { if (registration == null) { throw new ArgumentNullException(nameof(registration)); } registration.ActivatorData.ConstructorFinder = constructorFinder ?? throw new ArgumentNullException(nameof(constructorFinder)); return(registration); }
/// <summary> /// Create an activator for the provided type. /// </summary> /// <param name="implementationType">Type to activate.</param> /// <param name="constructorFinder">Constructor finder.</param> /// <param name="constructorSelector">Constructor selector.</param> /// <param name="configuredParameters">Parameters configured explicitly for this instance.</param> /// <param name="configuredProperties">Properties configured explicitly for this instance.</param> public ReflectionActivator( Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable<Parameter> configuredParameters, IEnumerable<Parameter> configuredProperties) : base(Enforce.ArgumentNotNull(implementationType, "implementationType")) { _implementationType = implementationType; _constructorFinder = Enforce.ArgumentNotNull(constructorFinder, "constructorFinder"); _constructorSelector = Enforce.ArgumentNotNull(constructorSelector, "constructorSelector"); _configuredParameters = Enforce.ArgumentNotNull(configuredParameters, "configuredParameters"); _configuredProperties = Enforce.ArgumentNotNull(configuredProperties, "configuredProperties"); }
/// <summary> /// Create an activator for the provided type. /// </summary> /// <param name="implementationType">Type to activate.</param> /// <param name="constructorFinder">Constructor finder.</param> /// <param name="constructorSelector">Constructor selector.</param> /// <param name="configuredParameters">Parameters configured explicitly for this instance.</param> /// <param name="configuredProperties">Properties configured explicitly for this instance.</param> public ReflectionActivator( Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable<Parameter> configuredParameters, IEnumerable<Parameter> configuredProperties) : base(Enforce.ArgumentNotNull(implementationType, "implementationType")) { _implementationType = implementationType; _constructorFinder = Enforce.ArgumentNotNull(constructorFinder, "constructorFinder"); _constructorSelector = Enforce.ArgumentNotNull(constructorSelector, "constructorSelector"); _configuredParameters = Enforce.ArgumentNotNull(configuredParameters, "configuredParameters"); _configuredProperties = Enforce.ArgumentNotNull(configuredProperties, "configuredProperties"); _defaultParameters = _configuredParameters.Concat( new Parameter[] {new AutowiringParameter(), new DefaultValueParameter()}); }
/// <summary> /// Create an activator for the provided type. /// </summary> /// <param name="implementationType">Type to activate.</param> /// <param name="constructorFinder">Constructor finder.</param> /// <param name="constructorSelector">Constructor selector.</param> /// <param name="configuredParameters">Parameters configured explicitly for this instance.</param> /// <param name="configuredProperties">Properties configured explicitly for this instance.</param> public ReflectionActivator( Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable <Parameter> configuredParameters, IEnumerable <Parameter> configuredProperties) : base(Enforce.ArgumentNotNull(implementationType, "implementationType")) { _implementationType = implementationType; _constructorFinder = Enforce.ArgumentNotNull(constructorFinder, "constructorFinder"); _constructorSelector = Enforce.ArgumentNotNull(constructorSelector, "constructorSelector"); _configuredParameters = Enforce.ArgumentNotNull(configuredParameters, "configuredParameters"); _configuredProperties = Enforce.ArgumentNotNull(configuredProperties, "configuredProperties"); _defaultParameters = _configuredParameters.Concat( new Parameter[] { new AutowiringParameter(), new DefaultValueParameter() }); }
public InstanceActivator(IInstanceActivator activator) { this.activator = activator; var reflectionActivator = activator as ReflectionActivator; if (reflectionActivator != null) { this.constructorFinder = reflectionActivator.ConstructorFinder; this.constructorSelector = reflectionActivator.ConstructorSelector; this._defaultParameters = (IEnumerable <Parameter>)_defaultParametersField.GetValue(reflectionActivator); } else { this.constructorFinder = new DefaultConstructorFinder(); this.constructorSelector = new MostParametersConstructorSelector(); this._defaultParameters = new Parameter[] { new AutowiringParameter(), new DefaultValueParameter() }; } }
/// <summary> /// Create an activator for the provided type. /// </summary> /// <param name="implementationType">Type to activate.</param> /// <param name="constructorFinder">Constructor finder.</param> /// <param name="constructorSelector">Constructor selector.</param> /// <param name="configuredParameters">Parameters configured explicitly for this instance.</param> /// <param name="configuredProperties">Properties configured explicitly for this instance.</param> public ReflectionActivator( Type implementationType, IConstructorFinder constructorFinder, IConstructorSelector constructorSelector, IEnumerable<Parameter> configuredParameters, IEnumerable<Parameter> configuredProperties) : base(implementationType) { if (constructorFinder == null) throw new ArgumentNullException(nameof(constructorFinder)); if (constructorSelector == null) throw new ArgumentNullException(nameof(constructorSelector)); if (configuredParameters == null) throw new ArgumentNullException(nameof(configuredParameters)); if (configuredProperties == null) throw new ArgumentNullException(nameof(configuredProperties)); _implementationType = implementationType; ConstructorFinder = constructorFinder; ConstructorSelector = constructorSelector; _configuredProperties = configuredProperties; _defaultParameters = configuredParameters.Concat( new Parameter[] {new AutowiringParameter(), new DefaultValueParameter()}); }
public ConstructorFinderWrapper(IConstructorFinder constructorFinder, DynamicProxyContext dynamicProxyContext) { _constructorFinder = constructorFinder; _dynamicProxyContext = dynamicProxyContext; }
public ConstructorDelegateFactory(IConstructorFinder constructorFinder) { ArgumentUtility.CheckNotNull("constructorFinder", constructorFinder); _constructorFinder = constructorFinder; }
public static IRegistrationBuilder <TLimit, TReflectionActivatorData, TStyle> FindConstructorsWith <TLimit, TReflectionActivatorData, TStyle>(this IRegistrationBuilder <TLimit, TReflectionActivatorData, TStyle> registration, IConstructorFinder constructorFinder) where TReflectionActivatorData : ReflectionActivatorData { if (registration == null) { throw new ArgumentNullException("registration"); } if (constructorFinder == null) { throw new ArgumentNullException("constructorFinder"); } registration.ActivatorData.ConstructorFinder = constructorFinder; return(registration); }
public void SetUp() { _constructorFinderMock = MockRepository.GenerateStrictMock <IConstructorFinder>(); _factory = new ConstructorDelegateFactory(_constructorFinderMock); }
public ReflectionActivator(Type limitType, IConstructorFinder finder) : base(limitType) { _constructorFinder = finder; }
public ReflectionActivatorData(Type implement) { Implement = implement; ConstructorFinder = new DefaultConstructorFinder(); }