collector.files().forEach(function (key) {
     if(filePath == null || key.startWith(filePath)) {
         if(fileOnly) {
             if(key == filePath)
                 summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
             else if(key.endWith(".js")) {
                 var lindex = key.lastIndexOf("/");
                 if(key.substring(0, lindex + 1) == filePath)
                     summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
             }
         }
         else
             summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
     }
 });
 getTreeSummary: function(collector, filePath, fileOnly) {
     var summarizer = new istanbul.TreeSummarizer();
     var utils = istanbul.utils;
     collector.files().forEach(function (key) {
         if(filePath == null || key.startWith(filePath)) {
             if(fileOnly) {
                 if(key == filePath)
                     summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
                 else if(key.endWith(".js")) {
                     var lindex = key.lastIndexOf("/");
                     if(key.substring(0, lindex + 1) == filePath)
                         summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
                 }
             }
             else
                 summarizer.addFileCoverageSummary(key, utils.summarizeFileCoverage(collector.fileCoverageFor(key)));
         }
     });
     return summarizer.getTreeSummary();
 },