if (!proxy.getRepositoryKind().isFacetAvailable(P2ProxyRepository.class)) {
return ChecksumPolicy.IGNORE;
}
final P2ProxyRepository p2repo = proxy.adaptToFacet(P2ProxyRepository.class);
final ChecksumPolicy checksumPolicy = p2repo.getChecksumPolicy();
if (checksumPolicy == null || !checksumPolicy.shouldCheckChecksum()
|| !(item instanceof DefaultStorageFileItem)) {
// there is either no need to validate or we can't validate the item content
return ChecksumPolicy.IGNORE;
}
final ResourceStoreRequest req = new ResourceStoreRequest(P2Constants.ARTIFACT_MAPPINGS_XML);
req.setRequestLocalOnly(true);
try {
p2repo.retrieveItem(true, req);
}
catch (final Exception e) {
// no way to calculate
log.debug("Unable to find artifact-mapping.xml", e);
return ChecksumPolicy.IGNORE;