protected List getRootHandlers()

in agent/src/jetbrains/buildServer/xmlReportPlugin/parsers/jslint/JSLintXmlReportParser.java [29:60]


  protected List<XmlHandler> getRootHandlers() {
    return new ORHandler(elementsPath(new Handler() {
      public XmlReturn processElement(@NotNull final XmlElementInfo reader) {
        return reader.visitChildren(elementsPath(new Handler() {
          public XmlReturn processElement(@NotNull final XmlElementInfo reader) {
            final String file = reader.getAttribute("name");

            return reader.visitChildren(elementsPath(new Handler() {
              public XmlReturn processElement(@NotNull final XmlElementInfo reader) {
                myCallback.reportInspectionType(INSPECTION_TYPE);

                myCallback.reportInspection(
                  new InspectionResult(file, INSPECTION_ID, getMessage(reader.getAttribute("reason"), reader.getAttribute("evidence")),
                                       getInt(reader.getAttribute("line")), 2));

                return reader.noDeep();
              }
            }, "issue"));
          }
        }, "file"));
      }
    }, "jslint")) {
      @Override
      protected void finished(final boolean matched) {
        if (matched) {
          myCallback.markBuildAsInspectionsBuild();
        } else {
          myCallback.error("Unexpected report format: \"jslint\" root element missing. Please see JSLint sources for the supported format");
        }
      }
    }.asList();
  }