public static void StartDesktopServices() { ServiceLocator.GetCurrentLocator = () => { if (_currentService == null) { _currentService = new ServiceLocator(); } return(_currentService); }; ServiceLocator.Start = (IServiceLocator service) => { IProfiler profiler = new DesktopProfiler(); IApplicationHost host = new DesktopApplicationHost(profiler); ILocalizer localizer = new DesktopLocalizer(); IDbContext dbContext = new SqlDbContext( profiler as IDataProfiler, host as IDataConfiguration, localizer as IDataLocalizer); IRenderer renderer = new XamlRenderer(profiler); IWorkflowEngine wfEngine = new WorkflowEngine(host, dbContext); service.RegisterService <IProfiler>(profiler); service.RegisterService <IApplicationHost>(host); service.RegisterService <IDbContext>(dbContext); service.RegisterService <IRenderer>(renderer); service.RegisterService <IWorkflowEngine>(wfEngine); }; }
public static void StartDesktopServices() { // TODO: LOCALE CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo("uk-UA"); ServiceLocator.GetCurrentLocator = () => { if (_currentService == null) { _currentService = new ServiceLocator(); } return(_currentService); }; ServiceLocator.Start = (IServiceLocator service) => { IProfiler profiler = new DesktopProfiler(); DesktopApplicationHost host = new DesktopApplicationHost(profiler); IUserLocale userLocale = new DesktopUserLocale(); ILocalizer localizer = new DesktopLocalizer(host, userLocale); ITokenProvider tokenProvider = new DesktopTokenProvider(); IDbContext dbContext = new SqlDbContext( profiler as IDataProfiler, host as IDataConfiguration, localizer as IDataLocalizer, tenantManager: null, tokenProvider: tokenProvider); /*host as ITenantManager*/ IRenderer renderer = new XamlRenderer(profiler, host); IWorkflowEngine wfEngine = new WorkflowEngine(host, dbContext, null); IDataScripter scripter = new VueDataScripter(host, localizer); IUserStateManager userStateManager = new DesktopUserStateManager(host, dbContext); ILicenseManager licManager = new DesktopLicenseManager(dbContext); IExternalDataProvider dataProvider = new ExternalDataContext(); service.RegisterService <IProfiler>(profiler); service.RegisterService <IApplicationHost>(host); service.RegisterService <IDbContext>(dbContext); service.RegisterService <IRenderer>(renderer); service.RegisterService <IWorkflowEngine>(wfEngine); service.RegisterService <IDataScripter>(scripter); service.RegisterService <ILocalizer>(localizer); service.RegisterService <IUserStateManager>(userStateManager); service.RegisterService <ISupportUserInfo>(host); service.RegisterService <ILicenseManager>(licManager); service.RegisterService <IExternalDataProvider>(dataProvider); service.RegisterService <ITokenProvider>(tokenProvider); service.RegisterService <IUserLocale>(userLocale); host.TenantId = 1; }; }