/// <summary> /// Inicia uma nova instância da classe <see cref="MonitorProdutos"/>. /// </summary> /// <param name="domainEvents">Eventos de domínio.</param> /// <param name="logger">Logger.</param> /// <param name="configuracao">Configuração.</param> /// <param name="produtoFluxo">Fluxo de negócio dos produtos.</param> /// <param name="provedorHistorico">Provedor dos históricos.</param> public MonitorProdutos( Colosoft.Domain.IDomainEvents domainEvents, Colosoft.Logging.ILogger logger, ConfiguracaoKhan configuracao, Global.Negocios.IProdutoFluxo produtoFluxo, Historico.IProvedorHistorico provedorHistorico) : base(domainEvents) { this.logger = logger; this.configuracao = configuracao; this.produtoFluxo = produtoFluxo; this.provedorHistorico = provedorHistorico; Colosoft.Net.ServiceClientsManager.Current.Register(this.serviceUid, this.CriarCliente); }
/// <summary> /// Inicia uma nova instância da classe <see cref="MonitorNotaFiscal"/>. /// </summary> /// <param name="domainEvents">Eventos de domínio.</param> /// <param name="logger">Logger para registrar as informações.</param> /// <param name="configuracao">Configuração.</param> /// <param name="provedorHistorico">Provedor dos históricos.</param> public MonitorNotaFiscal( Colosoft.Domain.IDomainEvents domainEvents, Colosoft.Logging.ILogger logger, ConfiguracaoKhan configuracao, Historico.IProvedorHistorico provedorHistorico) : base(domainEvents) { this.logger = logger; this.configuracao = configuracao; this.provedorHistorico = provedorHistorico; this.AdicionarToken <Data.Domain.NotaFiscalGerada>( domainEvents.GetEvent <Data.Domain.NotaFiscalGerada>().Subscribe(this.NotaFiscalGerada)); Colosoft.Net.ServiceClientsManager.Current.Register(this.pedidoServiceUid, this.CriarPedidoClient); Colosoft.Net.ServiceClientsManager.Current.Register(this.consultasServciceUid, this.CriarConsultasClient); }
/// <summary> /// Inicia uma nova instância da classe <see cref="IntegradorKhan"/>. /// </summary> /// <param name="domainEvents">Relação dos eventos de domínio.</param> /// <param name="rentabilidadeFluxo">Fluxo de negócio da rentabilidade.</param> /// <param name="provedorHistorico">Provedor do histórico.</param> /// <param name="produtoFluxo">Fluxo de negócio dos produtos.</param> /// <param name="serviceLocator">Localizador de serviços.</param> public IntegradorKhan( Colosoft.Domain.IDomainEvents domainEvents, Glass.Rentabilidade.Negocios.IRentabilidadeFluxo rentabilidadeFluxo, Historico.IProvedorHistorico provedorHistorico, Glass.Global.Negocios.IProdutoFluxo produtoFluxo, Microsoft.Practices.ServiceLocation.IServiceLocator serviceLocator) { this.Logger = new LoggerIntegracao(); this.gerenciadorOperacoes = new GerenciadorOperacaoIntegracao(this.Logger); this.domainEvents = domainEvents; this.serviceLocator = serviceLocator; this.MonitorIndicadoresFinanceiros = new MonitorIndicadoresFinanceiros(this.Configuracao, this.Logger, rentabilidadeFluxo); this.MonitorNotaFiscal = new MonitorNotaFiscal(domainEvents, this.Logger, this.Configuracao, provedorHistorico); this.MonitorProdutos = new MonitorProdutos(domainEvents, this.Logger, this.Configuracao, produtoFluxo, provedorHistorico); this.MonitorCondicoesPagamento = new MonitorCondicoesPagamento(this.Configuracao, this.Logger); this.EsquemaHistorico = CriarEsquemaHistorico(); }