protected boolean filterModules(Collection<Module> modules){
  if (task.getNoMtimeCheck() || isOutputRepositoryURL()) {
    return false;
  }
  Iterator<Module> iterator=modules.iterator();
  while (iterator.hasNext()) {
    Module m=iterator.next();
    Module module=findModule(m.getName());
    if (module == null || module.getVersion() == null) {
      task.log("Module " + m.getName() + " could not be found (or unable to determine version and hence timestamp)",Project.MSG_VERBOSE);
      continue;
    }
    long newest=Math.max(newestFile(task.getSrc(),module.toDir()),newestFile(task.getResource(),module.toDir()));
    File outModuleDir=getArtifactDir(module);
    long oldest=oldestOutputArtifact(Long.MAX_VALUE,outModuleDir);
    task.log("Oldest file in " + outModuleDir + " "+ new Date(oldest),Project.MSG_DEBUG);
    if (newest != Long.MIN_VALUE && oldest != Long.MAX_VALUE && newest < oldest) {
      task.log("No need to compile " + module + ", it's up to date");
      iterator.remove();
    }
  }
  return modules.size() == 0;
}

protected boolean filterModules ( Collection < Module > modules ) { if ( task . getNoMtimeCheck ( ) || isOutputRepositoryURL ( ) ) { return false ; } Iterator < Module > iterator = modules . iterator ( ) ; while ( iterator . hasNext ( ) ) { Module m = iterator . next ( ) ; Module module = findModule ( m . getName ( ) ) ; if ( module == null || module . getVersion ( ) == null ) { task . log ( "Module " + m . getName ( ) + " could not be found (or unable to determine version and hence timestamp)" , Project . MSG_VERBOSE ) ; continue ; } long newest = Math . max ( newestFile ( task . getSrc ( ) , module . toDir ( ) ) , newestFile ( task . getResource ( ) , module . toDir ( ) ) ) ; File outModuleDir = getArtifactDir ( module ) ; long oldest = oldestOutputArtifact ( Long . MAX_VALUE , outModuleDir ) ; task . log ( "Oldest file in " + outModuleDir + " " + new Date ( oldest ) , Project . MSG_DEBUG ) ; if ( newest != Long . MIN_VALUE && oldest != Long . MAX_VALUE && newest < oldest ) { task . log ( "No need to compile " + module + ", it's up to date" ) ; iterator . remove ( ) ; } } return modules . size ( ) == 0 ; }
filters out all the modules which appear to not require compilation based on comparison of file modification times
