public static void Build() { UnitOfWork = new InMemoryUnitOfWork(); ClientProjections = new ClientProjections(UnitOfWork.Repository); ClientRepository = new ClientRepository(UnitOfWork.Repository); ClientService = new ClientService(ClientRepository, new AccountNumberService(), UnitOfWork); AccountProjections = new AccountProjections(UnitOfWork.Repository); AccountRepository = new AccountRepository(UnitOfWork.Repository); AccountService = new AccountService(AccountRepository, UnitOfWork); ClientPassedAwayHandler = new ClientPassedAwayHandler(AccountRepository, UnitOfWork); SubscribeToEvents(); }
public static void Build() { LogFactory.BuildLogger = type => new ConsoleWindowLogger(type); Repository = new InMemoryRepository(); DataQuery = Repository as IDataQuery; UnitOfWork = new InMemoryUnitOfWork(Repository); ClientProjections = new ClientProjections(Repository); ClientRepository = new ClientRepository(Repository, DataQuery); ClientApplicationService = new ClientApplicationService(ClientRepository, ClientProjections, UnitOfWork); AccountProjections = new AccountProjections(Repository); AccountRepository = new AccountRepository(Repository); AccountNumberService = new AccountNumberService(DataQuery); AccountApplicationService = new AccountApplicationService(AccountRepository, AccountProjections, AccountNumberService, UnitOfWork); RegisterCommands(); SubscribeToCommands(); RegisterSpecifications(); }