VIVO-773 create BulkUpdatingModel and OntModel as decorators.
Clean up the code, and no need to copy from Jena source files.
This commit is contained in:
parent
ecbee098cb
commit
338dd6344a
3 changed files with 204 additions and 3171 deletions
|
@ -10,14 +10,12 @@ import java.util.Iterator;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import com.hp.hpl.jena.graph.BulkUpdateHandler;
|
import com.hp.hpl.jena.graph.BulkUpdateHandler;
|
||||||
import com.hp.hpl.jena.graph.Graph;
|
|
||||||
import com.hp.hpl.jena.graph.Triple;
|
import com.hp.hpl.jena.graph.Triple;
|
||||||
import com.hp.hpl.jena.rdf.model.Model;
|
import com.hp.hpl.jena.rdf.model.Model;
|
||||||
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
||||||
import com.hp.hpl.jena.rdf.model.RDFReaderF;
|
import com.hp.hpl.jena.rdf.model.RDFReaderF;
|
||||||
import com.hp.hpl.jena.rdf.model.Statement;
|
import com.hp.hpl.jena.rdf.model.Statement;
|
||||||
import com.hp.hpl.jena.rdf.model.StmtIterator;
|
import com.hp.hpl.jena.rdf.model.StmtIterator;
|
||||||
import com.hp.hpl.jena.rdf.model.impl.ModelCom;
|
|
||||||
import com.hp.hpl.jena.rdf.model.impl.RDFReaderFImpl;
|
import com.hp.hpl.jena.rdf.model.impl.RDFReaderFImpl;
|
||||||
import com.hp.hpl.jena.rdf.model.impl.StatementImpl;
|
import com.hp.hpl.jena.rdf.model.impl.StatementImpl;
|
||||||
import com.hp.hpl.jena.shared.WrappedIOException;
|
import com.hp.hpl.jena.shared.WrappedIOException;
|
||||||
|
@ -27,19 +25,13 @@ import com.hp.hpl.jena.util.iterator.Map1;
|
||||||
* A model that still handles bulk updates in the old-fashioned way: with a
|
* A model that still handles bulk updates in the old-fashioned way: with a
|
||||||
* BulkUpdateHandler.
|
* BulkUpdateHandler.
|
||||||
*/
|
*/
|
||||||
public class BulkUpdatingModel extends ModelCom {
|
public class BulkUpdatingModel extends AbstractModelDecorator {
|
||||||
private static final RDFReaderF readerFactory = new RDFReaderFImpl();
|
private static final RDFReaderF readerFactory = new RDFReaderFImpl();
|
||||||
|
|
||||||
private final BulkUpdateHandler buh;
|
private final BulkUpdateHandler buh;
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
public BulkUpdatingModel(Model inner, BulkUpdateHandler buh) {
|
||||||
public BulkUpdatingModel(Graph base) {
|
super(inner);
|
||||||
super(base);
|
|
||||||
this.buh = base.getBulkUpdateHandler();
|
|
||||||
}
|
|
||||||
|
|
||||||
public BulkUpdatingModel(Graph base, BulkUpdateHandler buh) {
|
|
||||||
super(base);
|
|
||||||
this.buh = buh;
|
this.buh = buh;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.rdfservice.adapters;
|
package edu.cornell.mannlib.vitro.webapp.rdfservice.adapters;
|
||||||
|
|
||||||
|
import static com.hp.hpl.jena.ontology.OntModelSpec.OWL_MEM;
|
||||||
|
|
||||||
import com.hp.hpl.jena.graph.BulkUpdateHandler;
|
import com.hp.hpl.jena.graph.BulkUpdateHandler;
|
||||||
import com.hp.hpl.jena.graph.Graph;
|
import com.hp.hpl.jena.graph.Graph;
|
||||||
import com.hp.hpl.jena.ontology.OntModel;
|
import com.hp.hpl.jena.ontology.OntModel;
|
||||||
|
@ -12,31 +14,45 @@ import com.hp.hpl.jena.rdf.model.ModelFactory;
|
||||||
* Make models that will do proper bulk updates.
|
* Make models that will do proper bulk updates.
|
||||||
*/
|
*/
|
||||||
public class VitroModelFactory {
|
public class VitroModelFactory {
|
||||||
|
public static Model createModel() {
|
||||||
|
return ModelFactory.createDefaultModel();
|
||||||
|
}
|
||||||
|
|
||||||
public static OntModel createOntologyModel() {
|
public static OntModel createOntologyModel() {
|
||||||
return new BulkUpdatingOntModel();
|
return ModelFactory.createOntologyModel(OWL_MEM);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static OntModel createOntologyModel(Model model) {
|
public static OntModel createOntologyModel(Model model) {
|
||||||
return new BulkUpdatingOntModel(model);
|
@SuppressWarnings("deprecation")
|
||||||
|
BulkUpdateHandler buh = model.getGraph().getBulkUpdateHandler();
|
||||||
|
|
||||||
|
OntModel ontModel = ModelFactory.createOntologyModel(OWL_MEM, model);
|
||||||
|
return new BulkUpdatingOntModel(ontModel, buh);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Model createUnion(Model baseModel, Model otherModel) {
|
public static Model createUnion(Model baseModel, Model otherModel) {
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
BulkUpdateHandler buh = baseModel.getGraph().getBulkUpdateHandler();
|
BulkUpdateHandler buh = baseModel.getGraph().getBulkUpdateHandler();
|
||||||
|
|
||||||
Graph unionGraph = ModelFactory.createUnion(baseModel, otherModel)
|
Model unionModel = ModelFactory.createUnion(baseModel, otherModel);
|
||||||
.getGraph();
|
return new BulkUpdatingModel(unionModel, buh);
|
||||||
return new BulkUpdatingModel(unionGraph, buh);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static OntModel createUnion(OntModel baseModel, OntModel otherModel) {
|
public static OntModel createUnion(OntModel baseModel, OntModel otherModel) {
|
||||||
return new BulkUpdatingOntModel(createUnion((Model) baseModel,
|
@SuppressWarnings("deprecation")
|
||||||
(Model) otherModel));
|
BulkUpdateHandler buh = baseModel.getGraph().getBulkUpdateHandler();
|
||||||
|
|
||||||
|
Model unionModel = createUnion((Model) baseModel, (Model) otherModel);
|
||||||
|
OntModel unionOntModel = ModelFactory.createOntologyModel(OWL_MEM,
|
||||||
|
unionModel);
|
||||||
|
return new BulkUpdatingOntModel(unionOntModel, buh);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static Model createModelForGraph(Graph g) {
|
public static Model createModelForGraph(Graph g) {
|
||||||
return new BulkUpdatingModel(g);
|
@SuppressWarnings("deprecation")
|
||||||
|
BulkUpdateHandler buh = g.getBulkUpdateHandler();
|
||||||
|
|
||||||
|
return new BulkUpdatingModel(ModelFactory.createModelForGraph(g), buh);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue