public static IAmazonMWSChannel Create(AmazonMWSClientOptions options, ILoggerFactory loggerFactory = null, IExecutionRetryPolicy retryPolicy = null) { var services = new ServiceCollection(); services.AddAmazonMWS(); if (loggerFactory == null) { loggerFactory = new NullLoggerFactory(); } if (retryPolicy == null) { retryPolicy = new NoExecutionRetryPolicy(); } return(new AmazonMWSChannel(new OptionsSnapshotWrappper <AmazonMWSClientOptions>(options), loggerFactory.CreateLogger <AmazonMWSChannel>(), retryPolicy)); }
public ThrottleAndNetworkErrorExecutionRetryPolicy(IOptionsSnapshot <RetryPolicyOptions> options, ILoggerFactory loggerFactory) { this.networkErrorExecutionRetryPolicy = new NetworkErrorExecutionRetryPolicy(options, loggerFactory); this.throttleExecutionRetryPolicy = new ThrottleExecutionRetryPolicy(options, loggerFactory); }
public AmazonMWSChannel(IOptionsSnapshot <AmazonMWSClientOptions> options, ILogger <AmazonMWSChannel> logger, IExecutionRetryPolicy executionRetryPolicy) { this.options = options ?? throw new ArgumentNullException(nameof(options)); this.executionRetryPolicy = executionRetryPolicy ?? throw new ArgumentNullException(nameof(executionRetryPolicy)); this.logger = logger ?? throw new ArgumentNullException(nameof(logger)); }