/// <summary>
        /// Initializes a new instance of the <see cref="StubMonoRailServices"/> class.
        /// </summary>
        /// <param name="urlBuilder">The URL builder.</param>
        /// <param name="filterFactory">The filter factory.</param>
        /// <param name="viewEngineManager">The view engine manager.</param>
        /// <param name="actionSelector">The action selector.</param>
        /// <param name="dynamicActionProviderFactory">The dynamic action provider factory.</param>
        public StubMonoRailServices(IUrlBuilder urlBuilder, IFilterFactory filterFactory, IViewEngineManager viewEngineManager,
                                    IActionSelector actionSelector, IDynamicActionProviderFactory dynamicActionProviderFactory)
        {
            this.UrlBuilder                   = urlBuilder;
            this.FilterFactory                = filterFactory;
            this.ViewEngineManager            = viewEngineManager;
            this.ActionSelector               = actionSelector;
            this.DynamicActionProviderFactory = dynamicActionProviderFactory;
            controllerTree         = new DefaultControllerTree();
            ControllerFactory      = new DefaultControllerFactory(controllerTree);
            StaticResourceRegistry = new DefaultStaticResourceRegistry();

            ControllerContextFactory = new DefaultControllerContextFactory();

            ControllerDescriptorProvider = new DefaultControllerDescriptorProvider(
                new DefaultHelperDescriptorProvider(),
                new DefaultFilterDescriptorProvider(),
                new DefaultLayoutDescriptorProvider(),
                new DefaultRescueDescriptorProvider(),
                new DefaultResourceDescriptorProvider(),
                new DefaultTransformFilterDescriptorProvider(),
                new DefaultReturnBinderDescriptorProvider(),
                new DefaultDynamicActionProviderDescriptorProvider());

            ResourceFactory    = new DefaultResourceFactory();
            ScaffoldingSupport = new StubScaffoldingSupport();
            CacheProvider      = new StubCacheProvider();
            HelperFactory      = new DefaultHelperFactory();
            ServiceInitializer = new DefaultServiceInitializer();

            ExtensionManager = new ExtensionManager(this);

            ValidatorRegistry = new CachedValidationRegistry();

            JSONSerializer = new NewtonsoftJSONSerializer();

            DictionaryAdapterFactory = new DictionaryAdapterFactory();

            ScriptBuilder = new DefaultScriptBuilder();
        }
Exemple #2
0
		/// <summary>
		/// Sets the engine context. Also initialize all required services by querying
		/// <see cref="IEngineContext.Services"/>
		/// </summary>
		/// <param name="engineContext">The engine context.</param>
		public virtual void SetEngineContext(IEngineContext engineContext)
		{
			this.engineContext = engineContext;

			helperFactory = engineContext.Services.HelperFactory; // should not be null
			serviceInitializer = engineContext.Services.ServiceInitializer; // should not be null
			filterFactory = engineContext.Services.FilterFactory; // should not be null
			viewEngineManager = engineContext.Services.ViewEngineManager; // should not be null
			actionSelector = engineContext.Services.ActionSelector; // should not be null
			scaffoldSupport = engineContext.Services.ScaffoldingSupport; // might be null
			dynamicActionProviderFactory = engineContext.Services.DynamicActionProviderFactory; // should not be null
		}