public void Init(ServiceLocator sl, ref PluginSetting s) { if (!s.Enable) { return; } RepositoryPluginSetting setting = new Repository.RepositoryPluginSetting(s); s = setting; string type1 = setting["type1"]; string type2 = setting["type2"]; if (StringUtil.IsNullOrEmpty(type1) && StringUtil.IsNullOrEmpty(type2)) { setting.Enable = false; LogManager.GetLogger <RepositoryInitializer>().Debug("RepositoryInitializer is disabled. type1 and type2 is null."); } else { if (StringUtil.HasText(type1)) { try { Type t1 = Type.GetType(type1, true, true); sl.AddComponent("kiss.repository_1", typeof(IRepository <>), t1); } catch (Exception ex) { LogManager.GetLogger <RepositoryInitializer>().Error("RepositoryInitializer Error." + ExceptionUtil.WriteException(ex)); } } if (StringUtil.HasText(type2)) { try { Type t2 = Type.GetType(type2, true, true); sl.AddComponent("kiss.repository_2", typeof(IRepository <,>), t2); } catch (Exception ex) { LogManager.GetLogger <RepositoryInitializer>().Error("RepositoryInitializer Error." + ExceptionUtil.WriteException(ex)); } } } foreach (var item in Plugin.Plugins.GetPlugins <DbProviderAttribute>()) { sl.AddComponent(item.ProviderName, item.Decorates); } }
protected void Application_Start(object sender, EventArgs e) { StopAppDomainRestart(); // start component ServiceLocator sl = ServiceLocator.Instance; sl.Init(delegate { sl.AddComponent("Kiss.webcontext", typeof(IWebContext), typeof(WebRequestContext)); sl.AddComponent("Kiss.typeFinder", typeof(ITypeFinder), typeof(WebAppTypeFinder)); }); LogManager.GetLogger <KissHttpApplication>().Debug("ALL components initialized."); EventBroker.Instance.BeginRequest += onBeginRequest; }
public void Init(ServiceLocator sl, ref PluginSetting setting) { if (!setting.Enable) { sl.AddComponent("kiss.XmlUrlMappingProvider", typeof(IUrlMappingProvider), typeof(XmlUrlMappingProvider)); sl.AddComponent("kiss.defaultHost", typeof(IHost), typeof(Kiss.Web.Host)); return; } sl.AddComponent("kiss.Areahost", typeof(IHost), typeof(Host)); sl.AddComponent("kiss.AreaUrlMappingProvider", typeof(IUrlMappingProvider), typeof(AreaUrlMappingProvider)); Areas.Add(@"/", AreaConfig.Instance); ControllerResolver resolver = ControllerResolver.Instance; load_areas(resolver); HttpRuntime.Cache.Insert(kCACHE_KEY, "dummyValue", null, Cache.NoAbsoluteExpiration, Cache.NoSlidingExpiration); logger.Debug("AreaInitializer done."); }
public void Init(ServiceLocator sl, ref PluginSetting s) { if (!s.Enable) { return; } CachePluginSetting settings = new CachePluginSetting(s); s = settings; foreach (var item in Plugin.Plugins.GetPlugins <CacheProviderAttribute>()) { sl.AddComponent(string.Format("kiss.cache.{0}", item.Name), typeof(ICacheProvider), item.Decorates); } }