private static InMemoryBus CreateBus() { var dependencies = new DefaultDependencyResolver(); dependencies.Add <IRepositorioDeProdutos>(new RepositorioDeProdutos()); dependencies.Add <IRepositorioDeClientes>(new RepositorioDeClientes()); dependencies.Add <IRepositorioDeNotasFiscais>(new RepositorioDeNotasFiscais()); var bus = new InMemoryBus(dependencies); bus.RegisterHandler <EmitirNotaFiscal>(); bus.RegisterHandler <CancelarNotaFiscal>(); return(bus); }
private void Initialize() { var container = new UnityContainer(); var bus = new InMemoryBus(new DependenciasDoDominio(container)); container.RegisterInstance <IBus>(bus); container.RegisterInstance <IRepositorioDeClientes>(new RepositorioDeClientes(bus)); container.RegisterInstance <IRepositorioDePedidos>(new RepositorioDePedidos(bus)); container.RegisterInstance <IRepositorioDeProdutos>(new RepositorioDeProdutos()); container.RegisterInstance <IDados>(new CacheLocal()); container.RegisterInstance <INotifier>(new EmailNotifier()); //Comandos bus.RegisterHandler <AdicionarClienteHandler>(); bus.RegisterHandler <AdicionarPedidoHandler>(); //Eventos bus.RegisterHandler <AtualizacaoDeCacheLocal>(); bus.RegisterHandler <Notificacao>(); bus.RegisterHandler <Autenticacao>(); ModelBinders.Binders.Add(typeof(ProdutoDisponivel), new MB.Produto()); DependencyResolver.SetResolver(new DependenciasDaWeb(container, DependencyResolver.Current)); }
private static void RegisterEventHandlers(InMemoryBus bus) { IUserEventHandler userEventHandler = new UserEventHandler(); bus.RegisterHandler <UserCreated>(userEventHandler.Handle); }