public AmazonSqsReceiveEndpointBuilder(IAmazonSqsHostControl host, AmazonSqsHostSettings hostSettings, IAmazonSqsReceiveEndpointConfiguration configuration) : base(configuration) { _host = host; _hostSettings = hostSettings; _configuration = configuration; }
public IAmazonSqsHostConfiguration CreateHostConfiguration(IAmazonSqsHostControl host) { var hostConfiguration = new AmazonSqsHostConfiguration(this, host); _hosts.Add(hostConfiguration); return(hostConfiguration); }
public AmazonSqsHostConfiguration(IAmazonSqsBusConfiguration busConfiguration, AmazonSqsHostSettings settings, IAmazonSqsHostTopology topology) { Settings = settings; _topology = topology; _busConfiguration = busConfiguration; _host = new AmazonSqsHost(this); }
public void Build(IAmazonSqsHostControl host) { var builder = new AmazonSqsReceiveEndpointBuilder(host, _hostConfiguration.Settings, 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(host, _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 AmazonSqsPublishTransportProvider(IAmazonSqsHostControl host) { _host = host; }
public AmazonSqsHostConfiguration(IAmazonSqsBusConfiguration busConfiguration, IAmazonSqsHostControl host) { _host = host; _busConfiguration = busConfiguration; }
public PublishTransportProvider(IAmazonSqsHostControl host, IAmazonSqsPublishTopology publishTopology) { _publishTopology = publishTopology; _host = host; }
public SqsQueueReceiveEndpointContext(IAmazonSqsHostControl host, IAmazonSqsReceiveEndpointConfiguration configuration, BrokerTopology brokerTopology) : base(configuration) { _host = host; BrokerTopology = brokerTopology; }
public SendTransportProvider(IAmazonSqsHostControl host) { _host = host; }