[qodana] properly write aggregated results from DuplicatedCode inspection to json QD-1270

(cherry picked from commit 7ece2d35ed6aac85d6365f7010a17eece28c8ee3)

IJ-CR-14891

GitOrigin-RevId: cd3176cb504f80d1e2b9d5df924211ace4be2ace
This commit is contained in:
Artemy Pestretsov
2021-10-05 10:03:55 +00:00
committed by intellij-monorepo-bot
parent 0f9bf52ace
commit 01cbf345e1
@@ -59,7 +59,7 @@ public class JsonInspectionsReportConverter implements InspectionsReportConverte
@NonNls private static final String GROUPS = "groups";
@NonNls private static final String INSPECTION = "inspection";
@NonNls private static final String HIGHLIGHTED_ELEMENT = "highlighted_element";
@NonNls private static final String DUPLICATED_CODE_AGGREGATE = "DuplicatedCode" + InspectionsResultUtil.AGGREGATE;
@NonNls public static final String DUPLICATED_CODE_AGGREGATE = "DuplicatedCode" + InspectionsResultUtil.AGGREGATE;
@Override
public String getFormatName() {
@@ -114,16 +114,20 @@ public class JsonInspectionsReportConverter implements InspectionsReportConverte
jsonWriter.name(PROBLEMS);
jsonWriter.beginArray();
for (Element duplicates : problems.getRootElement().getChildren("duplicate")) {
jsonWriter.beginArray();
for (Element fragment : duplicates.getChildren("fragment")) {
convertDuplicateFragment(jsonWriter, fragment);
}
jsonWriter.endArray();
convertDuplicates(jsonWriter, duplicates);
}
jsonWriter.endArray();
jsonWriter.endObject();
}
public static void convertDuplicates(@NotNull JsonWriter jsonWriter, Element duplicates) throws IOException {
jsonWriter.beginArray();
for (Element fragment : duplicates.getChildren("fragment")) {
convertDuplicateFragment(jsonWriter, fragment);
}
jsonWriter.endArray();
}
private static void convertDuplicateFragment(@NotNull JsonWriter jsonWriter, Element fragment) throws IOException {
jsonWriter.beginObject();
jsonWriter.name(FILE).value(fragment.getAttributeValue(FILE));