graph cleaning to implement ugly hardcoded rules, avoid NPEs

This commit is contained in:
Claudio Atzori 2024-05-29 09:26:12 +02:00
parent 8e45c5baa8
commit a428e7be7e
1 changed files with 19 additions and 8 deletions

View File

@ -1016,14 +1016,25 @@ public class GraphCleaningFunctions extends CleaningFunctions {
final Result r = (Result) value; final Result r = (Result) value;
// Fix for AMS Acta // Fix for AMS Acta
r.getInstance() Optional
.stream() .ofNullable(r.getInstance())
.filter(i -> Optional.ofNullable(i.getHostedby()).map(KeyValue::getKey).map(dsId -> dsId.equals("10|re3data_____::4cc76bed7ce2fb95fd8e7a2dfde16016")).orElse(false)) .map(
.forEach(i -> { instance -> instance
if (Optional.ofNullable(i.getPid()).map(pid -> pid.stream().noneMatch(p -> p.getValue().startsWith("10.6092/unibo/amsacta"))).orElse(false)) { .stream()
i.setHostedby(UNKNOWN_REPOSITORY); .filter(
} i -> Optional
}); .ofNullable(i.getHostedby())
.map(KeyValue::getKey)
.map(dsId -> dsId.equals("10|re3data_____::4cc76bed7ce2fb95fd8e7a2dfde16016"))
.orElse(false)))
.ifPresent(instance -> instance.forEach(i -> {
if (Optional
.ofNullable(i.getPid())
.map(pid -> pid.stream().noneMatch(p -> p.getValue().startsWith("10.6092/unibo/amsacta")))
.orElse(false)) {
i.setHostedby(UNKNOWN_REPOSITORY);
}
}));
} }
} }
return value; return value;