in Darabonba/Core.cs [249:268]
internal static int GetBackoffTime(IDictionary Idict, int retryTimes)
{
int backOffTime = 0;
Dictionary<string, object> dict = Idict.Keys.Cast<string>().ToDictionary(key => key, key => Idict[key]);
if (!dict.ContainsKey("policy") || dict["policy"] == null ||
string.IsNullOrWhiteSpace(dict["policy"].ToString()) || dict["policy"].ToString() == "no")
{
return backOffTime;
}
if (dict.ContainsKey("period") && dict["period"] != null)
{
int.TryParse(dict["period"].ToString(), out backOffTime);
if (backOffTime <= 0)
{
return retryTimes;
}
}
return backOffTime;
}