code: private Set<Path> getNewDataInFolder(Path inputFolder, Path outputFolder) throws IOException {
      Set<Path> newFiles = Sets.newHashSet();
  
      if (!this.fs.exists(inputFolder) || !this.fs.exists(outputFolder)) {
        return newFiles;
      }
  
      DateTime lastCompactionTime = new DateTime(MRCompactor.readCompactionTimestamp(this.fs, outputFolder));
      for (FileStatus fstat : FileListUtils.listFilesRecursively(this.fs, inputFolder)) {
        DateTime fileModificationTime = new DateTime(fstat.getModificationTime());
        if (fileModificationTime.isAfter(lastCompactionTime)) {
          LOG.info ("[" + fileModificationTime.getMillis() + "] " + fstat.getPath() + " is after " + lastCompactionTime.getMillis());
          newFiles.add(fstat.getPath());
        }
      }
      if (!newFiles.isEmpty()) {
        LOG.info(String.format("Found %d new files within folder %s which are more recent than the previous "
            + "compaction start time of %s.", newFiles.size(), inputFolder, lastCompactionTime));
      }
  
      return newFiles;
    }
docs: Check if inputFolder contains any files which have modification times which are more
  recent than the last compaction time as stored within outputFolder; return any files
  which do. An empty list will be returned if all files are older than the last compaction time.