public SQSConsumer(IOptions <SQSClientOptions> options, ILogger <SQSConsumer <TData> > logger, IApplicationNameService applicationNameService, ISQSClientFactory sqsClientFactory) { _options = options.Value; _logger = logger; _applicationNameService = applicationNameService; _amazonSqsClient = sqsClientFactory.From(_options); }
private SQSClientOptions GetSqsClientOptions(string queueName) { var clientOptions = new SQSClientOptions { ServiceUrl = $"{_baseSQSUrl}", QueueUrl = $"{_baseSQSUrl}/queue/{queueName}" }; return(clientOptions); }
public IAmazonSQS From(SQSClientOptions clientOptions) { var amazonSqsConfig = new AmazonSQSConfig(); if (!string.IsNullOrWhiteSpace(clientOptions.ServiceUrl)) { amazonSqsConfig.ServiceURL = clientOptions.ServiceUrl; } if (!string.IsNullOrWhiteSpace(clientOptions.Region)) { amazonSqsConfig.RegionEndpoint = RegionEndpoint.GetBySystemName(clientOptions.Region); } return(new AmazonSQSClient(clientOptions.AwsAccessKeyId, clientOptions.AwsSecretAccessKey, amazonSqsConfig)); }