ResilienceStrategyBuilderContext
The context used for building an individual resilience strategy.
using Polly.Telemetry;
using System;
using System.Diagnostics;
using System.Runtime.CompilerServices;
namespace Polly
{
[System.Runtime.CompilerServices.NullableContext(1)]
[System.Runtime.CompilerServices.Nullable(0)]
public sealed class ResilienceStrategyBuilderContext
{
[System.Runtime.CompilerServices.Nullable(2)]
[field: System.Runtime.CompilerServices.Nullable(2)]
public string BuilderName {
[System.Runtime.CompilerServices.NullableContext(2)]
get;
}
public ResilienceProperties BuilderProperties { get; }
[System.Runtime.CompilerServices.Nullable(2)]
[field: System.Runtime.CompilerServices.Nullable(2)]
public string StrategyName {
[System.Runtime.CompilerServices.NullableContext(2)]
get;
}
public string StrategyType { get; }
public ResilienceStrategyTelemetry Telemetry { get; }
internal TimeProvider TimeProvider { get; }
internal Func<double> Randomizer { get; }
internal bool IsGenericBuilder { get; }
internal ResilienceStrategyBuilderContext([System.Runtime.CompilerServices.Nullable(2)] string builderName, ResilienceProperties builderProperties, [System.Runtime.CompilerServices.Nullable(2)] string strategyName, string strategyType, TimeProvider timeProvider, bool isGenericBuilder, [System.Runtime.CompilerServices.Nullable(2)] DiagnosticSource diagnosticSource, Func<double> randomizer)
{
BuilderName = builderName;
BuilderProperties = builderProperties;
StrategyName = strategyName;
StrategyType = strategyType;
TimeProvider = timeProvider;
IsGenericBuilder = isGenericBuilder;
Telemetry = TelemetryUtil.CreateTelemetry(diagnosticSource, builderName, builderProperties, strategyName, strategyType);
Randomizer = randomizer;
}
}
}