public ISqlAsyncPolicyBuilder WithDefaultPolicies() { _policies.Add(AsyncPolicies.GetTimeOutPolicy(_overallTimeout, PolicyKeys.SqlOverallTimeoutAsyncPolicy)); _policies.Add(AsyncPolicies.GetCommonTransientErrorsPolicies(RetryCount)); _policies.AddRange(AsyncPolicies.GetCircuitBreakerPolicies(ExceptionsAllowedBeforeBreaking)); return(this); }
public ISqlAsyncPolicyBuilder WithOverallAndTimeoutPerRetry(TimeSpan overallTimeout, TimeSpan timeoutPerRetry) { _policies.Add(AsyncPolicies.GetTimeOutPolicy(_overallTimeout, PolicyKeys.SqlOverallTimeoutAsyncPolicy)); _policies.Add(AsyncPolicies.GetTimeOutPolicy(timeoutPerRetry, PolicyKeys.SqlTimeoutPerRetryAsyncPolicy)); return(this); }
public ISqlAsyncPolicyBuilder WithTimeoutPerRetry(TimeSpan timeout) { _policies.Add(AsyncPolicies.GetTimeOutPolicy(timeout, PolicyKeys.SqlTimeoutPerRetryAsyncPolicy)); return(this); }
public ISqlAsyncPolicyBuilder WithOverallTimeout(TimeSpan timeout) { _policies.Add(AsyncPolicies.GetTimeOutPolicy(timeout, PolicyKeys.SqlOverallTimeoutAsyncPolicy)); return(this); }
public ISqlAsyncPolicyBuilder WithFallback(Func <Task> action) { _policies.Add(AsyncPolicies.GetFallbackPolicy(action)); return(this); }
public ISqlAsyncPolicyBuilder WithCircuitBreaker(int exceptionsAllowedBeforeBreaking) { _policies.AddRange(AsyncPolicies.GetCircuitBreakerPolicies(ExceptionsAllowedBeforeBreaking)); return(this); }
public ISqlAsyncPolicyBuilder WithTransaction() { _policies.Add(AsyncPolicies.GetTransactionPolicy(RetryCount)); return(this); }
public ISqlAsyncPolicyBuilder WithTransientErrors(int retryCount) { _policies.Add(AsyncPolicies.GetCommonTransientErrorsPolicies(RetryCount)); return(this); }