From a3b947d2f7a3a0fb7764a814ba1d9fb3778af2dc Mon Sep 17 00:00:00 2001 From: stellamit Date: Mon, 28 Nov 2011 16:44:23 +0000 Subject: [PATCH] NIHVIVO-3350 (missing tbox inferences) --- .../dao/jena/Classes2ClassesDaoJena.java | 24 +++++++------------ 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/Classes2ClassesDaoJena.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/Classes2ClassesDaoJena.java index 1fd062ccd..fd503f05f 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/Classes2ClassesDaoJena.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/Classes2ClassesDaoJena.java @@ -2,19 +2,14 @@ package edu.cornell.mannlib.vitro.webapp.dao.jena; -import java.util.HashSet; -import java.util.List; - import com.hp.hpl.jena.ontology.OntModel; import com.hp.hpl.jena.ontology.OntResource; -import com.hp.hpl.jena.rdf.model.Property; import com.hp.hpl.jena.rdf.model.Resource; import com.hp.hpl.jena.shared.Lock; import com.hp.hpl.jena.vocabulary.RDFS; import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes; import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao; -import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory; import edu.cornell.mannlib.vitro.webapp.dao.jena.event.EditEvent; /** @@ -30,12 +25,10 @@ public class Classes2ClassesDaoJena extends JenaBaseDao implements Classes2Class deleteClasses2Classes(c2c, getOntModelSelector().getTBoxModel()); } -//TODO restore write locks once reasoner is able to handle these update asynchronously. - public void deleteClasses2Classes( Classes2Classes c2c, OntModel ontModel ) { -// ontModel.enterCriticalSection(Lock.WRITE); - getOntModel().getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),true)); + ontModel.enterCriticalSection(Lock.WRITE); + ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),true)); try { OntResource subclass = getOntClass(ontModel,c2c.getSubclassURI()); OntResource superclass = getOntClass(ontModel,c2c.getSuperclassURI()); @@ -49,8 +42,8 @@ public class Classes2ClassesDaoJena extends JenaBaseDao implements Classes2Class smartRemove(superclass, getOntModel()); } } finally { - getOntModel().getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false)); -// ontModel.leaveCriticalSection(); + ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false)); + ontModel.leaveCriticalSection(); } } @@ -60,8 +53,8 @@ public class Classes2ClassesDaoJena extends JenaBaseDao implements Classes2Class public void insertNewClasses2Classes( Classes2Classes c2c, OntModel ontModel ) { -// ontModel.enterCriticalSection(Lock.WRITE); - getOntModel().getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),true)); + ontModel.enterCriticalSection(Lock.WRITE); + ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),true)); try { Resource subclass = ontModel.getResource(c2c.getSubclassURI()); Resource superclass = ontModel.getResource(c2c.getSuperclassURI()); @@ -69,9 +62,8 @@ public class Classes2ClassesDaoJena extends JenaBaseDao implements Classes2Class ontModel.add(subclass, RDFS.subClassOf, superclass); } } finally { - getOntModel().getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false)); -// ontModel.leaveCriticalSection(); + ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false)); + ontModel.leaveCriticalSection(); } } - }