in sdk/src/Core/Sampling/ServiceConnector.cs [119:149]
private static List<SamplingRule> UnmarshallSamplingRuleResponse(string responseContent)
{
List<SamplingRule> samplingRules = new List<SamplingRule>();
var samplingRuleResponse = JsonMapper.ToObject<SamplingRuleResponseModel>(responseContent);
foreach (var samplingRuleRecord in samplingRuleResponse.SamplingRuleRecords)
{
var samplingRuleModel = samplingRuleRecord.SamplingRule;
if (samplingRuleModel.Version.GetValueOrDefault() == Version && SamplingRule.IsValid(samplingRuleModel))
{
var samplingRule = new SamplingRule
(
samplingRuleModel.RuleName,
samplingRuleModel.Priority.GetValueOrDefault(),
samplingRuleModel.FixedRate.GetValueOrDefault(),
samplingRuleModel.ReservoirSize.GetValueOrDefault(),
samplingRuleModel.Host,
samplingRuleModel.ServiceName,
samplingRuleModel.HTTPMethod,
samplingRuleModel.URLPath,
samplingRuleModel.ServiceType,
samplingRuleModel.ResourceARN,
samplingRuleModel.Attributes
);
samplingRules.Add(samplingRule);
}
}
return samplingRules;
}