internal static Suppression GenerateSuppression(AdditionalInfo additionalInfo) { // If this sentinel key does not exist, we have no suppression data. if (!additionalInfo.ContainsKey("SuppressedMatch")) { return(null); } additionalInfo.TryGetValue("HashKey", out string hashKey); additionalInfo.TryGetValue("MatchingScore", out string matchingScore); additionalInfo.TryGetValue("SuppressJustification", out string justification); var suppression = new Suppression { Kind = SuppressionKind.External, Justification = justification }; if (!string.IsNullOrEmpty(matchingScore)) { suppression.SetProperty("MatchingScore", matchingScore); } if (!string.IsNullOrEmpty(hashKey)) { suppression.SetProperty("HashKey", hashKey); } return(suppression); }