public SiteController(OxiteConfigurationSection config, ISiteService siteService, IUserService userService /*, IBlogService blogService*/, ILanguageService languageService) { this.oxiteInstanceName = config.InstanceName; this.siteService = siteService; this.userService = userService; //this.blogService = blogService; this.languageService = languageService; }
public void ConfigureProvider(OxiteConfigurationSection config, OxiteDataProviderConfigurationElement dataProviderConfig, IUnityContainer container) { if (dataProviderConfig.Category == "LinqToSql") { container .RegisterType <OxiteTagsDataContext>(new InjectionConstructor(new ResolvedParameter <string>(!string.IsNullOrEmpty(dataProviderConfig.ConnectionString) ? dataProviderConfig.ConnectionString : config.Providers.DefaultConnectionString))) .RegisterType <ITagRepository, SqlServerTagRepository>(); } }
public SiteService(ISiteRepository repository, IValidationService validator, IModulesLoaded modulesLoaded, OxiteConfigurationSection config) { IEnumerable <IOxiteCacheModule> modules = modulesLoaded.GetModules <IOxiteCacheModule>(); this.repository = repository; this.validator = validator; this.cache = modules != null && modules.Count() > 0 ? modules.Reverse().First() : null; this.config = config; }
public void InitializeModules(OxiteConfigurationSection config) { //TODO: (erikpo) Instead of directly sending down the config information, wrap it in some other class (like a view model) foreach (OxiteModuleConfigurationElement module in config.Modules) { this.Modules.Add(module); this.SetModuleDefaults(); } }
public void Execute(IDictionary <string, object> state) { OxiteConfigurationSection config = container.Resolve <OxiteConfigurationSection>(); IModulesLoaded modulesLoaded = this.container.Resolve <IModulesLoaded>(); RouteCollection routes = this.container.Resolve <RouteCollection>(); IFilterRegistry filterRegistry = this.container.Resolve <FilterRegistry>(); ModelBinderDictionary modelBinders = this.container.Resolve <ModelBinderDictionary>(); filterRegistry.Clear(); modelBinders.Clear(); //todo: (nheskew) get plugin routes registered on load in the right order instead of just clearing the routes before module init routes.Clear(); foreach (OxiteModuleConfigurationElement module in config.Modules) { IOxiteModule moduleInstance = modulesLoaded.Load(config, module); if (moduleInstance != null) { moduleInstance.RegisterWithContainer(); moduleInstance.Initialize(); moduleInstance.RegisterFilters(filterRegistry); moduleInstance.RegisterModelBinders(modelBinders); this.container.RegisterInstance(modulesLoaded); } } routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.LoadFromModules(modulesLoaded); routes.LoadCatchAllFromModules(modulesLoaded); container.RegisterInstance(filterRegistry); }
/// <summary> /// Initializes a new instance of the SetupController class. /// </summary> /// <param name="setupService">Setup service to use to setup basic information about the site.</param> /// <param name="siteService">Site service to retrieve details of the site.</param> /// <param name="config">Oxite config with retrieve details about available modules.</param> public SetupController(ISetupService setupService, ISiteService siteService, OxiteConfigurationSection config) { this.setupService = setupService; this.siteService = siteService; this.config = config; }
public SiteActionFilter(OxiteContext context, OxiteConfigurationSection config) { this.context = context; this.config = config; }