Skip to main content

Class TaskRetryHelper

Namespace: Aurigma.DesignAtoms.Common
Assembly: Aurigma.DesignAtoms.dll
Syntax
public class TaskRetryHelper

Inheritance: System.Object -> TaskRetryHelper

Inherited Members

  • System.Object.ToString
  • System.Object.Equals(System.Object)
  • System.Object.Equals(System.Object,System.Object)
  • System.Object.ReferenceEquals(System.Object,System.Object)
  • System.Object.GetHashCode
  • System.Object.GetType
  • System.Object.MemberwiseClone

Constructors

TaskRetryHelper

public TaskRetryHelper()

Methods

RetryOnExceptionAsync<TTask>

public static Task<TTask> RetryOnExceptionAsync<TTask>(int retryCount, Func<Task<TTask>> operation, Func<Exception, bool> exceptionChecker = null, TimeSpan[] delays = null, ILogger logger = null)
Parameters
TypeNameDescription
System.Int32retryCount
System.Func<System.Threading.Tasks.Task<<TTask>>>operation
System.Func<System.Exception,System.Boolean>exceptionChecker
System.TimeSpan[]delays
NLog.ILoggerlogger
Returns

System.Threading.Tasks.Task<<TTask>>

RetryOnExceptionAsync<TTask>

public static Task<TTask> RetryOnExceptionAsync<TTask>(int retryCount, Func<Task<TTask>> operation, Func<Exception, int?> getStatusCodeFunc = null, TimeSpan[] delays = null, ILogger logger = null)
Parameters
TypeNameDescription
System.Int32retryCount
System.Func<System.Threading.Tasks.Task<<TTask>>>operation
System.Func<System.Exception,System.Nullable<System.Int32>>getStatusCodeFunc
System.TimeSpan[]delays
NLog.ILoggerlogger
Returns

System.Threading.Tasks.Task<<TTask>>

RetryOnExceptionAsync<TTask, TException>

public static Task<TTask> RetryOnExceptionAsync<TTask, TException>(int retryCount, Func<Task<TTask>> operation, Func<TException, bool> exceptionChecker = null, Func<TException, int?> getStatusCodeFunc = null, TimeSpan[] delays = null, ILogger logger = null)
where TException : Exception
Parameters
TypeNameDescription
System.Int32retryCount
System.Func<System.Threading.Tasks.Task<<TTask>>>operation
System.Func<<TException>,System.Boolean>exceptionChecker
System.Func<<TException>,System.Nullable<System.Int32>>getStatusCodeFunc
System.TimeSpan[]delays
NLog.ILoggerlogger
Returns

System.Threading.Tasks.Task<<TTask>>

GetRequestTaskFactory<T>

public static Func<Task<T>> GetRequestTaskFactory<T>(Func<Task<T>> func)
Parameters
TypeNameDescription
System.Func<System.Threading.Tasks.Task<<T>>>func
Returns

System.Func<System.Threading.Tasks.Task<<T>>>

Was this page helpful?