/// <inheritdoc/> public TResult Execute <TResult>(Func <TResult> action) { if (DelegatedPolicy != null) { return(DelegatedPolicy.Execute(action)); } return(UnderlyingPolicy.Execute(action)); }
/// <inheritdoc/> public Task <TResult> Execute <TResult>(Func <CancellationToken, Task <TResult> > action, bool continueOnCapturedContext, CancellationToken cancellationToken) { if (DelegatedPolicy != null) { return(DelegatedPolicy.Execute(action, continueOnCapturedContext, cancellationToken)); } return(UnderlyingPolicy.ExecuteAsync(action, cancellationToken, continueOnCapturedContext)); }
/// <inheritdoc/> public TResult Execute <TResult>(Func <TResult> action) { ThrowIfAsyncAction(typeof(TResult)); if (DelegatedPolicy != null) { return(DelegatedPolicy.Execute(action)); } return(UnderlyingPolicy.Execute(action)); }
/// <inheritdoc/> public void Execute(Action action) { if (DelegatedPolicy != null) { DelegatedPolicy.Execute(action); } else { UnderlyingPolicy.Execute(action); } }