ResilienceStrategyRegistryOptions<TKey>
An options class used by ResilienceStrategyRegistry<T>.
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Runtime.CompilerServices;
namespace Polly.Registry
{
[System.Runtime.CompilerServices.NullableContext(1)]
[System.Runtime.CompilerServices.Nullable(0)]
public class ResilienceStrategyRegistryOptions<[System.Runtime.CompilerServices.Nullable(2)] TKey>
{
[Required]
public Func<ResilienceStrategyBuilder> BuilderFactory { get; set; } = () => new ResilienceStrategyBuilder();
[Required]
public IEqualityComparer<TKey> StrategyComparer { get; set; } = EqualityComparer<TKey>.Default;
[Required]
public IEqualityComparer<TKey> BuilderComparer { get; set; } = EqualityComparer<TKey>.Default;
[Required]
public Func<TKey, string> StrategyKeyFormatter { get; set; } = delegate(TKey key) {
ref TKey reference2 = ref key;
TKey val2 = default(TKey);
object obj2;
if (val2 == null) {
val2 = reference2;
ref reference2 = ref val2;
if (val2 == null) {
obj2 = null;
goto IL_0031;
}
}
obj2 = reference2.ToString();
goto IL_0031;
IL_0031:
if (obj2 == null)
obj2 = string.Empty;
return (string)obj2;
};
[Required]
public Func<TKey, string> BuilderNameFormatter { get; set; } = delegate(TKey key) {
ref TKey reference = ref key;
TKey val = default(TKey);
object obj;
if (val == null) {
val = reference;
ref reference = ref val;
if (val == null) {
obj = null;
goto IL_0031;
}
}
obj = reference.ToString();
goto IL_0031;
IL_0031:
if (obj == null)
obj = string.Empty;
return (string)obj;
};
}
}