public static void convertPhpVulnerablePath(@NotNull JsonWriter jsonWriter, Element problem) throws IOException {
    jsonWriter.beginObject();

    jsonWriter.name(DESCRIPTION).value("Vulnerable code flow");
    jsonWriter.name("fragments");
    jsonWriter.beginArray();
    Element fragmentsElement = problem.getChild("fragments");
    assert fragmentsElement != null;
    for (Element fragment : fragmentsElement.getChildren("fragment")) {
      convertPhpVulnerableFragment(jsonWriter, fragment);
    }
    jsonWriter.endArray();

    convertPhpSink(jsonWriter, problem);

    jsonWriter.name("sources");
    jsonWriter.beginArray();
    Element sourcesElement = problem.getChild("sources");
    assert sourcesElement != null;
    for (Element source : sourcesElement.getChildren("source")) {
      convertPhpTaintSource(jsonWriter, source);
    }
    jsonWriter.endArray();

    jsonWriter.name(LANGUAGE).value(problem.getChildText(LANGUAGE));
    Element problemClassElement = problem.getChild(DefaultInspectionToolResultExporter.INSPECTION_RESULTS_PROBLEM_CLASS_ELEMENT);
    if (problemClassElement != null) {
      convertProblemClass(jsonWriter, problemClassElement);
    }

    jsonWriter.endObject();
  }
public static void convertPhpVulnerablePath(@NotNull JsonWriter jsonWriter, Element problem)