code: public ReportsConfig getReportsConfig(Collection<String> restrictToNamed) {
          resetErrors();
          ReportsConfig result = new ReportsConfig();
          InternalType[] reports = getReportList();
          if (reports == null)
          {
              errors.add("No reports found.");
              return result;
          }
          for (InternalType report : reports)
          {
              String name = "Unknown";
              final String named = reportToName(report);
              if (restrictToNamed != null && !restrictToNamed.contains(named)) continue;
              try {
                  name = loadReport(result, report);
              } catch (Exception e) {
                  errors.add("Error in report " + named + ": " + e.getMessage());
                  e.printStackTrace();
                  continue;
              }
          }
          return result;
      }
docs: Returns a list of reports in a ReportsConfig-uration object, it only loads reports in "restrictedToNamed", this
  is useful as a secondary report-restriction mechanism. So you would pass in all reports the user can access.
  @param restrictToNamed A list of report names to load. No error if one is not found.
  @return