code: @Subscribe
    public void onSuiteResult(AggregatedSuiteResultEvent e) {
      // Calculate summaries.
      summaryListener.suiteSummary(e);
  
      Description suiteDescription = e.getDescription();
      String displayName = suiteDescription.getDisplayName();
      if (displayName.trim().isEmpty()) {
        junit4.log("Could not emit XML report for suite (null description).", 
            Project.MSG_WARN);
        return;
      }
  
      if (!suiteCounts.containsKey(displayName)) {
        suiteCounts.put(displayName, 1);
      } else {
        int newCount = suiteCounts.get(displayName) + 1;
        suiteCounts.put(displayName, newCount);
        if (!ignoreDuplicateSuites && newCount == 2) {
          junit4.log("Duplicate suite name used with XML reports: "
              + displayName + ". This may confuse tools that process XML reports. "
              + "Set 'ignoreDuplicateSuites' to true to skip this message.", Project.MSG_WARN);
        }
        displayName = displayName + "-" + newCount;
      }
      
      try {
        File reportFile = new File(dir, "TEST-" + displayName + ".xml");
        RegistryMatcher rm = new RegistryMatcher();
        rm.bind(String.class, new XmlStringTransformer());
        Persister persister = new Persister(rm);
        persister.write(buildModel(e), reportFile);
      } catch (Exception x) {
        junit4.log("Could not serialize report for suite "
            + displayName + ": " + x.toString(), x, Project.MSG_WARN);
      }
    }
docs: Emit information about all of suite's tests.