public SQSClientProvider(ISQSConfig config) { this.config = config; this.awsConfig = new AmazonSQSConfig { ServiceURL = this.config.ServiceURL, }; this.sqsClientLazy = new Lazy <AmazonSQSClient>(() => new AmazonSQSClient(this.config.AwsAccessKeyId, this.config.AwsSecretAccessKey, this.awsConfig), true); }
public SQSMessageSender( ISQSConfig config, ILogger logger, ISystemClock clock, ISQSClientProvider sqsClientProvider, ISendMessageRequestFactory sendMessageRequestFactory) { this.config = config; this.clock = clock; this.logger = logger; this.sqsClientProvider = sqsClientProvider; this.sendMessageRequestFactory = sendMessageRequestFactory; }
public SQSSubscriber( ISQSConfig config, ILogger logger, ISystemClock clock, ISQSClientProvider sqsClientProvider, ISendMessageRequestFactory sendMessageRequestFactory, CancellationTokenSource tokenSource, ITypeHelper typeHelper, IScopeProvider scopeProvider) { this.config = config; this.clock = clock; this.logger = logger; this.sqsClientProvider = sqsClientProvider; this.sendMessageRequestFactory = sendMessageRequestFactory; this.tokenSource = tokenSource; this.typeHelper = typeHelper; this.scopeProvider = scopeProvider; this.semaphoreSlim = config.MaxConcurrencyReceive > 0 ? new SemaphoreSlim(config.MaxConcurrencyReceive) : null; }
public SendMessageRequestFactory(ISQSConfig config, ISQSHelper sqsHelper) { this.config = config; this.sqsHelper = sqsHelper; }