for (FileInfo file : newFiles) {
FileInfo oldFile = files.getFile(file.getDisplayPath());
if (oldFile == null) {
files.addFile(file);
logger.debug("adding {}", file.getDisplayPath());
} else if (oldFile.shouldReplaceWith(file)) {
logger.debug("replacing {}", oldFile.getDisplayPath());
files.addFile(file);
} else if (file.isLoaded()) {
logger.debug("updating {} (loaded)", file.getDisplayPath());
files.addFile(file);