private void Application_Exit(object sender, ExitEventArgs e) { var client = _diScope.ResolveOptional <Protocol.V2.Core.Client>(); client?.Stop(); _diScope?.Dispose(); }
private void App_OnExit(object sender, ExitEventArgs e) { var log = LogFactory.Create(typeof(App)); _mainWindow?.SaveLayout(); log.Info("Disposing editor components."); _lifetimeScope?.Dispose(); _container?.Dispose(); log.Info("Editor components disposed."); log.Info("Geisha Editor is being closed."); }
public void Init() { var clock = new StubClock(); var appDataFolder = new StubAppDataFolder(clock); _controllerBuilder = new ControllerBuilder(); _routeCollection = new RouteCollection(); _modelBinderDictionary = new ModelBinderDictionary(); _viewEngineCollection = new ViewEngineCollection { new WebFormViewEngine() }; _container = OrchardStarter.CreateHostContainer( builder => { builder.RegisterInstance(new StubShellSettingsLoader()).As<IShellSettingsManager>(); builder.RegisterType<RoutePublisher>().As<IRoutePublisher>(); builder.RegisterType<ModelBinderPublisher>().As<IModelBinderPublisher>(); builder.RegisterType<ShellContextFactory>().As<IShellContextFactory>(); builder.RegisterType<StubExtensionManager>().As<IExtensionManager>(); builder.RegisterType<StubVirtualPathMonitor>().As<IVirtualPathMonitor>(); builder.RegisterInstance(appDataFolder).As<IAppDataFolder>(); builder.RegisterInstance(_controllerBuilder); builder.RegisterInstance(_routeCollection); builder.RegisterInstance(_modelBinderDictionary); builder.RegisterInstance(_viewEngineCollection); builder.RegisterAutoMocking() .Ignore<IExtensionFolders>() .Ignore<IRouteProvider>() .Ignore<IHttpRouteProvider>() .Ignore<IModelBinderProvider>() .Ignore<IWorkContextEvents>() .Ignore<IOwinMiddlewareProvider>(); }); _lifetime = _container.BeginLifetimeScope(); _container.Mock<IContainerProvider>() .SetupGet(cp => cp.ApplicationContainer).Returns(_container); _container.Mock<IContainerProvider>() .SetupGet(cp => cp.RequestLifetime).Returns(_lifetime); _container.Mock<IContainerProvider>() .Setup(cp => cp.EndRequestLifetime()).Callback(() => _lifetime.Dispose()); _container.Mock<IShellDescriptorManager>() .Setup(cp => cp.GetShellDescriptor()).Returns(default(ShellDescriptor)); _container.Mock<IOrchardShellEvents>() .Setup(e => e.Activated()); _container.Mock<IOrchardShellEvents>() .Setup(e => e.Terminating()).Callback(() => new object()); }
public void Init() { _controllerBuilder = new ControllerBuilder(); _routeCollection = new RouteCollection(); _modelBinderDictionary = new ModelBinderDictionary(); _viewEngineCollection = new ViewEngineCollection { new WebFormViewEngine() }; _container = OrchardStarter.CreateHostContainer( builder => { builder.RegisterInstance(new StubShellSettingsLoader()).As<IShellSettingsManager>(); builder.RegisterType<StubContainerProvider>().As<IContainerProvider>().InstancePerLifetimeScope(); builder.RegisterType<RoutePublisher>().As<IRoutePublisher>(); builder.RegisterType<ModelBinderPublisher>().As<IModelBinderPublisher>(); builder.RegisterType<ShellContextFactory>().As<IShellContextFactory>(); builder.RegisterType<StubExtensionManager>().As<IExtensionManager>(); builder.RegisterInstance(_controllerBuilder); builder.RegisterInstance(_routeCollection); builder.RegisterInstance(_modelBinderDictionary); builder.RegisterInstance(_viewEngineCollection); builder.RegisterAutoMocking() .Ignore<IExtensionFolders>() .Ignore<IRouteProvider>() .Ignore<IModelBinderProvider>(); }); _lifetime = _container.BeginLifetimeScope(); _container.Mock<IContainerProvider>() .SetupGet(cp => cp.ApplicationContainer).Returns(_container); _container.Mock<IContainerProvider>() .SetupGet(cp => cp.RequestLifetime).Returns(_lifetime); _container.Mock<IContainerProvider>() .Setup(cp => cp.EndRequestLifetime()).Callback(() => _lifetime.Dispose()); _container.Mock<IShellDescriptorManager>() .Setup(cp => cp.GetShellDescriptor()).Returns(default(ShellDescriptor)); var temp = Path.GetTempFileName(); File.Delete(temp); Directory.CreateDirectory(temp); _container.Resolve<IAppDataFolder>() .SetBasePath(temp); var updater = new ContainerUpdater(); updater.RegisterInstance(_container).SingleInstance(); updater.Update(_lifetime); }
public static void Stop() { _rootScope?.Dispose(); _rootScope = null; }
public virtual void Dispose() { _container?.Dispose(); }
private static void DisposeScope(IJob job, ILifetimeScope lifetimeScope) { if (s_log.IsDebugEnabled) { s_log.DebugFormat("Disposing Scope 0x{0:x} for Job 0x{1:x}", lifetimeScope != null ? lifetimeScope.GetHashCode() : 0, job != null ? job.GetHashCode() : 0); } if (lifetimeScope != null) lifetimeScope.Dispose(); }
public void Dispose() { containerLifetime?.Dispose(); }
public void Dispose() { Logger.Debug("Closing connection"); _client?.Dispose(); _containerScope?.Dispose(); }
public virtual void Reset() { _runScope?.Dispose(); //dispose of any previous _runOptions = _runManager.GetRunOptions(); _logger.UpdateProcessId(_runOptions.ProcessId); }
public void Dispose() { _scope?.Dispose(); _container?.Dispose(); }
protected override Task OnCloseAsync(CancellationToken cancellationToken) { _container?.Dispose(); return(Task.CompletedTask); }
/// <summary> /// Wait for all commands/events to be processed before allowing process to exit. /// </summary> /// <param name="container">The test IoC container.</param> private static void WaitForCompletion(ILifetimeScope container) { var statistics = container.Resolve<Statistics>(); // Wait for statistics to stop capturing. while (statistics.Processing) Thread.Sleep(100); //Wait for all commands to be processed. WaitForCommandBusDrain(container); //Wait for all events to be processed. WaitForEventBusDrain(container); // Stop statistics collection. statistics.StopCapture(); // Wait for all stores to complete any background processing. container.Resolve<SqlSnapshotStore>().Dispose(); container.Resolve<SqlEventStore>().Dispose(); container.Resolve<SqlSagaStore>().Dispose(); // Dispose underlying IoC container. container.Dispose(); }
private void ServerOnDisconnected(object sender, EventArgs e) { childLifetimeScope?.Dispose(); }
public void EndMyViewLifetimeScope() { _myViewLifetimeScope?.Dispose(); }
protected override async Task OnCloseAsync(CancellationToken cancellationToken) { await base.OnCloseAsync(cancellationToken); _container?.Dispose(); }
public void Dispose() { _diScope?.Dispose(); }
public virtual void Dispose() { _container?.Dispose(); GC.SuppressFinalize(this); }
protected override void OnExit(ExitEventArgs e) { base.OnExit(e); iocScope?.Dispose(); }
/// <summary> /// 释放对象 /// </summary> public void Dispose() { _scope?.Dispose(); }
public void Dispose() => _lifetimeScope?.Dispose();
public void Dispose() { _parentScope?.Dispose(); }
public void Dispose() { _lifeTimeScope?.Dispose(); }
public override void DisposeScope() { _serviceScope.Dispose(); }
public void Cleanup() { scope?.Dispose(); }
void DisposeContainer() { container?.Dispose(); container = null; }
public override void Release() { _container?.Dispose(); }
/// <summary> /// Executes the task /// </summary> public void Execute(ILifetimeScope scope = null, bool throwOnError = false) { this.IsRunning = true; scope = scope ?? EngineContext.Current.ContainerManager.Scope(); var faulted = false; try { var task = this.CreateTask(scope); if (task != null) { this.LastStartUtc = DateTime.UtcNow; var scheduleTaskService = scope.Resolve<IScheduleTaskService>(); var scheduleTask = scheduleTaskService.GetTaskByType(this.Type); if (scheduleTask != null) { //update appropriate datetime properties scheduleTask.LastStartUtc = this.LastStartUtc; scheduleTaskService.UpdateTask(scheduleTask); } //execute task var ctx = new TaskExecutionContext() { LifetimeScope = scope, CancellationToken = new CancellationTokenSource(TimeSpan.FromHours(6.0)) // TODO: make that somewhat configurable (AdminAreaSettings?) }; task.Execute(ctx); this.LastEndUtc = this.LastSuccessUtc = DateTime.UtcNow; this.LastError = null; } else { faulted = true; this.LastError = "Could not create task instance"; } } catch (Exception ex) { faulted = true; this.Enabled = !this.StopOnError; this.LastEndUtc = DateTime.UtcNow; this.LastError = ex.Message.Truncate(995, "..."); //log error var logger = scope.Resolve<ILogger>(); logger.Error(string.Format("Error while running the '{0}' schedule task. {1}", this.Name, ex.Message), ex); if (throwOnError) { throw; } } finally { var scheduleTaskService = scope.Resolve<IScheduleTaskService>(); var scheduleTask = scheduleTaskService.GetTaskByType(this.Type); if (scheduleTask != null) { // update appropriate properties scheduleTask.LastError = this.LastError; scheduleTask.LastEndUtc = this.LastEndUtc; if (!faulted) { scheduleTask.LastSuccessUtc = this.LastSuccessUtc; } scheduleTaskService.UpdateTask(scheduleTask); } scope.Dispose(); this.IsRunning = false; } }
private void AfterScenario() { _lifetimeScope?.Dispose(); _lifetimeScope = null; }
public void Dispose() { Scope?.Dispose(); }
public void Dispose() { Instance?.Dispose(); }
public void Dispose() { lifetimeScope?.Dispose(); }
void DisposeScope(IJob job, ILifetimeScope lifetimeScope) { _logDebug(job, string.Format("Disposing Scope 0x{0:x} for Job 0x{1:x}", lifetimeScope != null ? lifetimeScope.GetHashCode() : 0, job != null ? job.GetHashCode() : 0)); if (lifetimeScope != null) lifetimeScope.Dispose(); }
public void SetUp() { _fixture = new ModuleTestHarness(); _fixture.ClearMessages(); _lifetimeScope = _fixture.Container.BeginLifetimeScope(); _lifetimeScope.Dispose(); _lifetimeScopeBeginningMessage = _fixture.GetSingleMessageOrDefault<LifetimeScopeBeginningMessage>(); _lifetimeScopeEndingMessage = _fixture.GetSingleMessageOrDefault<LifetimeScopeEndingMessage>(); }
public static WorkspaceViewModel Create(ILifetimeScope scope, IZetboxContext ctx) { if (scope == null) throw new ArgumentNullException("scope"); if (ctx == null) throw new ArgumentNullException("ctx"); var vmf = scope.Resolve<IViewModelFactory>(); var ws = vmf.CreateViewModel<ObjectEditor.WorkspaceViewModel.Factory>().Invoke(ctx, null); ws.Closed += (s, e) => scope.Dispose(); return ws; }
/// <summary> /// Called when an object is no longer needed. Called just before /// <see cref="System.IDisposable.Dispose"/> /// if the class also implements that. /// </summary> public Task DisposeAsync( ) { LifetimeScope?.Dispose( ); _container?.Dispose( ); return(Task.CompletedTask); }
protected override void OnExit(ExitEventArgs e) { base.OnExit(e); try { _scope?.Dispose(); } catch { } }
public void TestCleanup() { scope.Dispose(); }