public ISqlSyncPolicyBuilder WithDefaultPolicies()
 {
     _policies.Add(SyncPolicies.GetTimeOutPolicy(_overallTimeout, PolicyKeys.SqlOverallTimeoutSyncPolicy));
     _policies.Add(SyncPolicies.GetCommonTransientErrorsPolicies(RetryCount));
     _policies.AddRange(SyncPolicies.GetCircuitBreakerPolicies(ExceptionsAllowedBeforeBreaking));
     return(this);
 }
 public ISqlSyncPolicyBuilder WithOverallAndTimeoutPerRetry(TimeSpan overallTimeout, TimeSpan timeoutPerRetry)
 {
     _policies.Add(SyncPolicies.GetTimeOutPolicy(_overallTimeout, PolicyKeys.SqlOverallTimeoutSyncPolicy));
     _policies.Add(SyncPolicies.GetTimeOutPolicy(timeoutPerRetry, PolicyKeys.SqlTimeoutPerRetrySyncPolicy));
     return(this);
 }
 public ISqlSyncPolicyBuilder WithTimeoutPerRetry(TimeSpan timeout)
 {
     _policies.Add(SyncPolicies.GetTimeOutPolicy(timeout, PolicyKeys.SqlTimeoutPerRetrySyncPolicy));
     return(this);
 }
 public ISqlSyncPolicyBuilder WithOverallTimeout(TimeSpan timeout)
 {
     _policies.Add(SyncPolicies.GetTimeOutPolicy(timeout, PolicyKeys.SqlOverallTimeoutSyncPolicy));
     return(this);
 }