diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingModel.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingModel.java index 5476cd1aa..082626c96 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingModel.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingModel.java @@ -27,12 +27,22 @@ import java.util.List; public class BulkUpdatingModel extends AbstractModelDecorator { private static final RDFReaderF readerFactory = new RDFReaderFImpl(); - private Graph graph; private AbstractBulkUpdater updater; protected BulkUpdatingModel(Model m) { super(m); - graph = m.getGraph(); + Graph graph = m.getGraph(); + if (graph instanceof RDFServiceGraph) { + updater = new RDFServiceBulkUpdater((RDFServiceGraph)graph); + } else if (graph instanceof SparqlGraph) { + updater = new SparqlBulkUpdater((SparqlGraph)graph); + } else { + updater = null; + } + } + + protected BulkUpdatingModel(Model m, Graph graph) { + super(m); if (graph instanceof RDFServiceGraph) { updater = new RDFServiceBulkUpdater((RDFServiceGraph)graph); } else if (graph instanceof SparqlGraph) { diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingOntModel.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingOntModel.java index c7fe01d98..4fd61c892 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingOntModel.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/BulkUpdatingOntModel.java @@ -24,12 +24,22 @@ import java.util.List; public class BulkUpdatingOntModel extends AbstractOntModelDecorator { private static final RDFReaderF readerFactory = new RDFReaderFImpl(); - private Graph graph; private AbstractBulkUpdater updater; protected BulkUpdatingOntModel(OntModel m) { super(m); - graph = m.getGraph(); + Graph graph = m.getGraph(); + if (graph instanceof RDFServiceGraph) { + updater = new RDFServiceBulkUpdater((RDFServiceGraph)graph); + } else if (graph instanceof SparqlGraph) { + updater = new SparqlBulkUpdater((SparqlGraph)graph); + } else { + updater = null; + } + } + + protected BulkUpdatingOntModel(OntModel m, Graph graph) { + super(m); if (graph instanceof RDFServiceGraph) { updater = new RDFServiceBulkUpdater((RDFServiceGraph)graph); } else if (graph instanceof SparqlGraph) { diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/VitroModelFactory.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/VitroModelFactory.java index df2cff649..b8fccdc1b 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/VitroModelFactory.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/adapters/VitroModelFactory.java @@ -46,7 +46,7 @@ public class VitroModelFactory { Model unionModel = ModelFactory.createModelForGraph(unionGraph); - return new BulkUpdatingModel(unionModel); + return new BulkUpdatingModel(unionModel, baseGraph); } public static OntModel createUnion(OntModel baseModel, OntModel plusModel) { @@ -58,7 +58,7 @@ public class VitroModelFactory { Model unionModel = ModelFactory.createModelForGraph(unionGraph); OntModel unionOntModel = ModelFactory.createOntologyModel(OWL_MEM, unionModel); - return new BulkUpdatingOntModel(unionOntModel); + return new BulkUpdatingOntModel(unionOntModel, baseGraph); } public static Model createModelForGraph(Graph g) {