protected override void ComposeContainer(IBootstrapperLogger logger, ILifetimeScope container) { logger.Trace("Initializing view resolver..."); GlobalServices.Register(container.Resolve <IViewResolverService>()); logger.Debug("View resolver initialized successfully"); logger.Trace("Initializing command service..."); container.Resolve <ICommandService>(); logger.Debug("Command service initialized successfully"); }
private void RegisterContainerTypes(IBootstrapperLogger logger, ContainerBuilder builder) { logger.Trace("Registering modules..."); builder.RegisterModule <MainModule>(); builder.RegisterModule <DiagramModule>(); builder.RegisterModule <ControlsModule>(); builder.RegisterModule <NativeControlsModule>(); builder.RegisterModule <RibbonModule>(); logger.Debug("Modules registered"); }
protected override ILifetimeScope CreateContainer(IBootstrapperLogger logger, ILifetimeScope parentContainer) { logger.Trace("Configuring IOC builder"); if (parentContainer == null) { var builder = new ContainerBuilder(); RegisterContainerTypes(logger, builder); logger.Trace("Building IOC container"); return(builder.Build()); } logger.Trace("Extending parent IOC container with local definitions"); return(parentContainer.BeginDisposableLifetimeScope(builder => RegisterContainerTypes(logger, builder))); }
protected override void SetupVisualTheme(IBootstrapperLogger logger, ILifetimeScope container) { //To load custom font from application resources use: //var fontsUri = new Uri("pack://application:,,,/PS.Shell;component/resources/"); //ThemeFonts.FontFamily = new FontFamily(fontsUri, "./#<Font name>, Courier New"); }
protected override void InitializeCriticalComponents(IBootstrapperLogger logger, ILifetimeScope container) { }
protected override void DisposeContainer(IBootstrapperLogger logger, ILifetimeScope container) { logger.Trace("Disposing IOC container"); container.Dispose(); logger.Debug("IOC container disposed"); }
protected override void Dispose(IBootstrapperLogger logger) { }
public Bootstrapper(IBootstrapperLogger logger) : base(logger) { }
protected virtual TContainer CreateContainer(IBootstrapperLogger logger, TContainer parentContainer) { return(default);
protected virtual void ComposeContainer(IBootstrapperLogger logger, TContainer container) { }
protected Bootstrapper(IBootstrapperLogger logger) { _logger = logger ?? new RelayBootstrapperLogger(); }