From b891e8a40b57a71bb768a1c416e5c1c5bd3cd3db Mon Sep 17 00:00:00 2001 From: Graham Triggs Date: Sun, 19 Mar 2017 23:25:30 +0000 Subject: [PATCH] Revert "Use the dataset directly for isomorphism with Jena backend" This reverts commit f45847842c997968c9c451323eaf9894932bdd69. --- .../rdfservice/impl/jena/RDFServiceJena.java | 24 +++++++------------ 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/jena/RDFServiceJena.java b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/jena/RDFServiceJena.java index 7d45e02a6..6b448b3aa 100644 --- a/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/jena/RDFServiceJena.java +++ b/api/src/main/java/edu/cornell/mannlib/vitro/webapp/rdfservice/impl/jena/RDFServiceJena.java @@ -7,8 +7,6 @@ import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.io.OutputStreamWriter; -import java.io.StringWriter; import java.util.ArrayList; import java.util.Iterator; import java.util.List; @@ -21,7 +19,6 @@ import org.apache.commons.logging.LogFactory; import org.apache.jena.query.QuerySolutionMap; import org.apache.jena.query.Syntax; import org.apache.jena.rdf.model.Literal; -import org.apache.jena.riot.Lang; import org.apache.jena.riot.RDFDataMgr; import org.apache.log4j.lf5.util.StreamUtils; @@ -597,14 +594,10 @@ public abstract class RDFServiceJena extends RDFServiceImpl implements RDFServic @Override public boolean isEquivalentGraph(String graphURI, InputStream serializedGraph, ModelSerializationFormat serializationFormat) throws RDFServiceException { - - Model fileModel = RDFServiceUtils.parseModel(serializedGraph, serializationFormat); - - DatasetWrapper dw = getDatasetWrapper(); - Dataset d = dw.getDataset(); - Model tripleStoreModel = d.getNamedModel(graphURI); - - return fileModel.isIsomorphicWith(tripleStoreModel); + Model fileModel = RDFServiceUtils.parseModel(serializedGraph, serializationFormat); + Model tripleStoreModel = new RDFServiceDataset(this).getNamedModel(graphURI); + Model fromTripleStoreModel = ModelFactory.createDefaultModel().add(tripleStoreModel); + return fileModel.isIsomorphicWith(fromTripleStoreModel); } /** @@ -614,11 +607,12 @@ public abstract class RDFServiceJena extends RDFServiceImpl implements RDFServic @Override public boolean isEquivalentGraph(String graphURI, Model graph) throws RDFServiceException { // Retrieve the graph to compare - DatasetWrapper dw = getDatasetWrapper(); - Dataset d = dw.getDataset(); - Model tripleStoreModel = d.getNamedModel(graphURI); + Model tripleStoreModel = new RDFServiceDataset(this).getNamedModel(graphURI); - return graph.isIsomorphicWith(tripleStoreModel); + // Load the entire graph into memory (faster comparison) + Model fromTripleStoreModel = ModelFactory.createDefaultModel().add(tripleStoreModel); + + return graph.isIsomorphicWith(fromTripleStoreModel); } @Override