ResilienceContextFactory
using System.Collections.Generic;
using System.Threading;
namespace Polly.Utilities.Wrappers
{
internal static class ResilienceContextFactory
{
public static ResilienceContext Create(Context context, CancellationToken cancellationToken, bool continueOnCapturedContext, out IDictionary<string, object> oldProperties)
{
ResilienceContext val = ResilienceContextPool.get_Shared().Get(context.OperationKey, (bool?)continueOnCapturedContext, cancellationToken);
LegacySupport.SetProperties(val.get_Properties(), (IDictionary<string, object>)context, ref oldProperties);
return val;
}
public static void Cleanup(ResilienceContext resilienceContext, IDictionary<string, object> oldProperties)
{
IDictionary<string, object> dictionary = default(IDictionary<string, object>);
LegacySupport.SetProperties(resilienceContext.get_Properties(), oldProperties, ref dictionary);
ResilienceContextPool.get_Shared().Return(resilienceContext);
}
}
}