in src/main/java/org/apache/maven/buildcache/checksum/MavenProjectInput.java [299:325]
private boolean checkItemMatchesBaseline(ProjectsInputInfo baselineBuild, DigestItem fileDigest) {
Optional<DigestItem> baselineFileDigest = Optional.empty();
for (DigestItem it : baselineBuild.getItems()) {
if (it.getType().equals(fileDigest.getType())
&& fileDigest.getValue().equals(it.getValue().trim())) {
baselineFileDigest = Optional.of(it);
break;
}
}
boolean matched = false;
if (baselineFileDigest.isPresent()) {
String hash = baselineFileDigest.get().getHash();
matched = StringUtils.equals(hash, fileDigest.getHash());
if (!matched) {
LOGGER.info(
"Mismatch in {}: {}. Local hash: {}, remote: {}",
fileDigest.getType(),
fileDigest.getValue(),
fileDigest.getHash(),
hash);
}
} else {
LOGGER.info("Mismatch in {}: {}. Not found in remote cache", fileDigest.getType(), fileDigest.getValue());
}
return matched;
}