/// <summary> /// Should the caller retry the operation. /// </summary> /// <param name="cosmosResponseMessage"><see cref="CosmosResponseMessage"/> in return of the request</param> /// <param name="cancellationToken"></param> /// <returns>True indicates caller should retry, False otherwise</returns> public Task <ShouldRetryResult> ShouldRetryAsync( CosmosResponseMessage cosmosResponseMessage, CancellationToken cancellationToken) { return(this.ShouldRetryAsyncInternal(cosmosResponseMessage?.StatusCode, cosmosResponseMessage?.Headers.SubStatusCode, cosmosResponseMessage?.GetResourceAddress(), () => this.nextRetryPolicy.ShouldRetryAsync(cosmosResponseMessage, cancellationToken))); }
/// <summary> /// Should the caller retry the operation. /// </summary> /// <param name="cosmosResponseMessage"><see cref="CosmosResponseMessage"/> in return of the request</param> /// <param name="cancellationToken"></param> /// <returns>True indicates caller should retry, False otherwise</returns> public Task <ShouldRetryResult> ShouldRetryAsync( CosmosResponseMessage cosmosResponseMessage, CancellationToken cancellationToken) { ShouldRetryResult shouldRetryResult = this.ShouldRetryInternal(cosmosResponseMessage?.StatusCode, cosmosResponseMessage?.Headers.SubStatusCode, cosmosResponseMessage?.GetResourceAddress()); if (shouldRetryResult != null) { return(Task.FromResult(shouldRetryResult)); } return(this.nextRetryPolicy.ShouldRetryAsync(cosmosResponseMessage, cancellationToken)); }