public void Build(IHost host) { var context = CreateRabbitMqReceiveEndpointContext(); _modelConfigurator.UseFilter(new ConfigureTopologyFilter <ReceiveSettings>(_settings, context.BrokerTopology)); if (_hostConfiguration.DeployTopologyOnly) { _modelConfigurator.UseFilter(new TransportReadyFilter <ModelContext>(context)); } else { if (_settings.PurgeOnStartup) { _modelConfigurator.UseFilter(new PurgeOnStartupFilter(_settings.QueueName)); } _modelConfigurator.UseFilter(new PrefetchCountFilter(_managementPipe, _settings.PrefetchCount)); _modelConfigurator.UseFilter(new RabbitMqConsumerFilter(context)); } IPipe <ModelContext> modelPipe = _modelConfigurator.Build(); var transport = new ReceiveTransport <ModelContext>(_hostConfiguration, context, () => context.ModelContextSupervisor, modelPipe); var receiveEndpoint = new ReceiveEndpoint(transport, context); var queueName = _settings.QueueName ?? NewId.Next().ToString(FormatUtil.Formatter); host.AddReceiveEndpoint(queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var context = CreateActiveMqReceiveEndpointContext(); _sessionConfigurator.UseFilter(new ConfigureTopologyFilter <ReceiveSettings>(_settings, context.BrokerTopology)); if (_hostConfiguration.DeployTopologyOnly) { _sessionConfigurator.UseFilter(new TransportReadyFilter <SessionContext>(context)); } else { _sessionConfigurator.UseFilter(new ActiveMqConsumerFilter(context)); } IPipe <SessionContext> sessionPipe = _sessionConfigurator.Build(); var transport = new ReceiveTransport <SessionContext>(_hostConfiguration, context, () => context.SessionContextSupervisor, sessionPipe); var receiveEndpoint = new ReceiveEndpoint(transport, context); var queueName = _settings.EntityName ?? NewId.Next().ToString(FormatUtil.Formatter); host.AddReceiveEndpoint(queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var context = CreateSqsReceiveEndpointContext(); _clientConfigurator.UseFilter(new ConfigureTopologyFilter <ReceiveSettings>(_settings, context.BrokerTopology)); if (_hostConfiguration.DeployTopologyOnly) { _clientConfigurator.UseFilter(new TransportReadyFilter <ClientContext>(context)); } else { if (_settings.PurgeOnStartup) { _clientConfigurator.UseFilter(new PurgeOnStartupFilter(_settings.EntityName)); } _clientConfigurator.UseFilter(new AmazonSqsConsumerFilter(context)); } IPipe <ClientContext> clientPipe = _clientConfigurator.Build(); var transport = new ReceiveTransport <ClientContext>(_hostConfiguration, context, () => context.ClientContextSupervisor, clientPipe); var receiveEndpoint = new ReceiveEndpoint(transport, context); var queueName = _settings.EntityName ?? NewId.Next().ToString(FormatUtil.Formatter); host.AddReceiveEndpoint(queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var context = CreateGrpcReceiveEndpointContext(); var transport = new GrpcReceiveTransport(context, _queueName); var receiveEndpoint = new ReceiveEndpoint(transport, context); host.AddReceiveEndpoint(_queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var builder = new RabbitMqReceiveEndpointBuilder(_hostConfiguration, this); ApplySpecifications(builder); var receiveEndpointContext = builder.CreateReceiveEndpointContext(); _modelConfigurator.UseFilter(new ConfigureTopologyFilter <ReceiveSettings>(_settings, receiveEndpointContext.BrokerTopology)); IAgent consumerAgent; if (_hostConfiguration.DeployTopologyOnly) { var transportReadyFilter = new TransportReadyFilter <ModelContext>(receiveEndpointContext); _modelConfigurator.UseFilter(transportReadyFilter); consumerAgent = transportReadyFilter; } else { if (_settings.PurgeOnStartup) { _modelConfigurator.UseFilter(new PurgeOnStartupFilter(_settings.QueueName)); } _modelConfigurator.UseFilter(new PrefetchCountFilter(_managementPipe, _settings.PrefetchCount)); var consumerFilter = new RabbitMqConsumerFilter(receiveEndpointContext); _modelConfigurator.UseFilter(consumerFilter); consumerAgent = consumerFilter; } IPipe <ModelContext> modelPipe = _modelConfigurator.Build(); var transport = new RabbitMqReceiveTransport(_hostConfiguration, _settings, modelPipe, receiveEndpointContext); transport.Add(consumerAgent); var receiveEndpoint = new ReceiveEndpoint(transport, receiveEndpointContext); var queueName = _settings.QueueName ?? NewId.Next().ToString(FormatUtil.Formatter); host.AddReceiveEndpoint(queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var builder = new AmazonSqsReceiveEndpointBuilder(_hostConfiguration, this); ApplySpecifications(builder); var receiveEndpointContext = builder.CreateReceiveEndpointContext(); _clientConfigurator.UseFilter(new ConfigureTopologyFilter <ReceiveSettings>(_settings, receiveEndpointContext.BrokerTopology)); IAgent consumerAgent; if (_hostConfiguration.DeployTopologyOnly) { var transportReadyFilter = new TransportReadyFilter <ClientContext>(receiveEndpointContext); _clientConfigurator.UseFilter(transportReadyFilter); consumerAgent = transportReadyFilter; } else { if (_settings.PurgeOnStartup) { _clientConfigurator.UseFilter(new PurgeOnStartupFilter(_settings.EntityName)); } var consumerFilter = new AmazonSqsConsumerFilter(receiveEndpointContext); _clientConfigurator.UseFilter(consumerFilter); consumerAgent = consumerFilter; } IFilter <ConnectionContext> clientFilter = new ReceiveClientFilter(_clientConfigurator.Build()); _connectionConfigurator.UseFilter(clientFilter); var transport = new SqsReceiveTransport(_hostConfiguration, _settings, _connectionConfigurator.Build(), receiveEndpointContext); transport.Add(consumerAgent); var receiveEndpoint = new ReceiveEndpoint(transport, receiveEndpointContext); var queueName = _settings.EntityName ?? NewId.Next().ToString(FormatUtil.Formatter); host.AddReceiveEndpoint(queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }
public void Build(IHost host) { var builder = new InMemoryReceiveEndpointBuilder(_hostConfiguration, this); ApplySpecifications(builder); var receiveEndpointContext = builder.CreateReceiveEndpointContext(); var transport = new InMemoryReceiveTransport(receiveEndpointContext, _queueName); var receiveEndpoint = new ReceiveEndpoint(transport, receiveEndpointContext); host.AddReceiveEndpoint(_queueName, receiveEndpoint); ReceiveEndpoint = receiveEndpoint; }