/// <summary> /// Inicia uma nova instância da classe <see cref="MonitorEventosEntitidade{TEntidade}"/>. /// </summary> /// <param name="domainEvents">Domínio de eventos.</param> protected MonitorEventosEntitidade(Colosoft.Domain.IDomainEvents domainEvents) : base(domainEvents) { domainEvents.GetEvent <Colosoft.Business.EntityPersistingEvent>() .Subscribe( this.EntityPersisting, Colosoft.Domain.DomainEventThreadOption.PublisherThread, true, null, false, Guid.NewGuid().ToString()); }
/// <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(); }
/// <summary> /// Configura o provedor. /// </summary> public static void Configurar(Colosoft.Domain.IDomainEvents domainEvents) { var persistingEvent = domainEvents.GetEvent <Colosoft.Business.EntityPersistingEvent>(); var deletingEvent = domainEvents.GetEvent <Colosoft.Business.EntityDeletingWithPersistenceSessionEvent>(); // Registra o método acionado pelo evento persistencia da entidade. persistingEvent.Subscribe( OnPersistingEntity, Colosoft.Domain.DomainEventThreadOption.PublisherThread, true, null, false, System.Guid.NewGuid().ToString()); // Registra o método acionado pelo evento de exclusão da entidade. deletingEvent.Subscribe( OnDeletingEntity, Colosoft.Domain.DomainEventThreadOption.PublisherThread, true, null, false, System.Guid.NewGuid().ToString()); }
public TokenInfo(Colosoft.Domain.IDomainEvents domainEvents, Colosoft.Domain.SubscriptionToken token) { this.domainEvents = domainEvents; this.token = token; }
/// <summary> /// Inicia uma nova instância da classe <see cref="MonitorEventos"/>. /// </summary> /// <param name="domainEvents">Eventos de domínio.</param> protected MonitorEventos(Colosoft.Domain.IDomainEvents domainEvents) { this.domainEvents = domainEvents; }