in backend/plugins/sonarqube/tasks/shared.go [137:205]
func setMetrics(fileMetrics *models.SonarqubeFileMetrics, metricsList []Measure) errors.Error {
var err errors.Error
for _, v := range metricsList {
switch v.Metric {
case "sqale_index":
fileMetrics.SqaleIndex, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "sqale_rating":
fileMetrics.SqaleRating, err = errors.Convert01(strconv.ParseFloat(v.Value, 32))
if err != nil {
return err
}
case "reliability_rating":
fileMetrics.ReliabilityRating = alphabetMap[v.Value]
case "security_rating":
fileMetrics.SecurityRating = alphabetMap[v.Value]
case "security_review_rating":
fileMetrics.SecurityReviewRating = alphabetMap[v.Value]
case "ncloc":
fileMetrics.Ncloc, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "code_smells":
fileMetrics.CodeSmells, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "bugs":
fileMetrics.Bugs, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "vulnerabilities":
fileMetrics.Vulnerabilities, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "security_hotspots":
fileMetrics.SecurityHotspots, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "security_hotspots_reviewed":
fileMetrics.SecurityHotspotsReviewed, err = errors.Convert01(strconv.ParseFloat(v.Value, 32))
if err != nil {
return err
}
case "uncovered_lines":
fileMetrics.UncoveredLines, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "lines_to_cover":
fileMetrics.LinesToCover, err = errors.Convert01(strconv.Atoi(v.Value))
if err != nil {
return err
}
case "coverage":
fileMetrics.Coverage, err = errors.Convert01(strconv.ParseFloat(v.Value, 32))
if err != nil {
return err
}
}
}
return nil
}