Code reorganization related to MediatR infrastructure

This commit is contained in:
Anton Kasyanov
2018-02-18 17:17:52 +02:00
parent 7b5858287a
commit 59f4e193d6
29 changed files with 182 additions and 180 deletions

View File

@@ -2,10 +2,9 @@ using System;
using System.Threading;
using System.Windows.Forms;
using EveOPreview.Configuration;
using EveOPreview.Mediator;
using EveOPreview.Services;
using EveOPreview.UI;
using EveOPreview.WindowManager;
using MediatR;
namespace EveOPreview
{
@@ -74,10 +73,17 @@ namespace EveOPreview
// Singleton registration is used for services
// Low-level services
container.Register<IMediator>();
container.Register<IWindowManager>();
container.Register<IProcessMonitor>();
// MediatR
container.Register<IMediator, MediatR.Mediator>();
container.RegisterInstance<SingleInstanceFactory>(t => container.Resolve(t));
container.RegisterInstance<MultiInstanceFactory>(t => container.ResolveAll(t));
container.Register(typeof(INotificationHandler<>), typeof(Program).Assembly);
container.Register(typeof(IRequestHandler<>), typeof(Program).Assembly);
container.Register(typeof(IRequestHandler<,>), typeof(Program).Assembly);
// Configuration services
container.Register<IConfigurationStorage>();
container.Register<IAppConfig>();