Esempio n. 1
0
        internal DiStrategy(IDiConstructorMap diConstructorMap, IDiArgumentBuilderFactory diArgumentBuilderFactory, IObjectBuilderFactory objectBuilderFactory)
        {
            IConstructionInfo constructionInfo = diConstructorMap.FindBestConstructorForDi();
            IArgumentBuilder  argumentBuilder  = diArgumentBuilderFactory.CreateBuilderFor(constructionInfo);

            _objectBuilder = objectBuilderFactory.CreateBuilder(constructionInfo, argumentBuilder);
        }
Esempio n. 2
0
        public object RetrieveService(object[] arguments)
        {
            IConstructionInfo constructionInfo = _argumentConstructorMap.FindBestConstructorForArguments(arguments);
            IArgumentBuilder  argumentBuilder  = _userArgumentBuilderFactory.CreateBuilderFor(constructionInfo, arguments);

            IObjectBuilder objectBuilder = _objectBuilderFactory.CreateBuilder(constructionInfo, argumentBuilder);

            return(objectBuilder.BuildObject());
        }