From 7d98ea90ec611c00ce6dd970774731cae79e541d Mon Sep 17 00:00:00 2001 From: Jerven Bolleman Date: Mon, 30 Sep 2024 08:37:09 +0200 Subject: [PATCH] Fixer: federation needs to be written out --- .../swiss/sib/rdf/sparql/examples/Fixer.java | 27 ++++++++++++------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/src/main/java/swiss/sib/rdf/sparql/examples/Fixer.java b/src/main/java/swiss/sib/rdf/sparql/examples/Fixer.java index 31c7a5f65..000923d8c 100644 --- a/src/main/java/swiss/sib/rdf/sparql/examples/Fixer.java +++ b/src/main/java/swiss/sib/rdf/sparql/examples/Fixer.java @@ -75,7 +75,7 @@ public Integer call() { } return 0; } - + public record Fixed(boolean changed, String fixed, String original, Set servicePartners) { public Fixed(boolean changed, String fixed, String original) { this(changed, fixed, original, null); @@ -191,20 +191,27 @@ static void fix(IRI queryIri, Value query, Path file, Model model, Map fixFederatedWith.servicePartners().size()) { + model.remove(queryIri, SIB.FEDERATES_WITH, null); } - if (removed) { + boolean present = true; + for (String fedWith : fixFederatedWith.servicePartners()) { + if (model.add(queryIri, SIB.FEDERATES_WITH, VF.createIRI(fedWith))) { + present = false; + } + } + if (!present) { writeFixedModel(file, model); + serviceWithChanged = true; } } + if (!fixedPrefixes.changed() && !fixBlz.changed() && !serviceWithChanged) { + System.out.println("No change to:" + file); + } } private static void writeFixedModel(Path file, Model model) {