NIHVIVO-3532 get rid of Classes2ClassesDao
This commit is contained in:
parent
3a6a3b985a
commit
94717a3705
12 changed files with 765 additions and 817 deletions
|
@ -16,7 +16,6 @@ import edu.cornell.mannlib.vedit.controller.BaseEditController;
|
|||
import edu.cornell.mannlib.vitro.webapp.auth.permissions.SimplePermission;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||
|
||||
public class Classes2ClassesOperationController extends BaseEditController {
|
||||
|
@ -58,7 +57,6 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
|||
return;
|
||||
}
|
||||
|
||||
Classes2ClassesDao dao = request.getFullWebappDaoFactory().getClasses2ClassesDao();
|
||||
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
||||
|
||||
String modeStr = request.getParameter("opMode");
|
||||
|
@ -81,7 +79,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(subclassURIstrs[i]);
|
||||
c2c.setSuperclassURI(superclassURIstr);
|
||||
dao.deleteClasses2Classes(c2c);
|
||||
vcDao.deleteClasses2Classes(c2c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -98,7 +96,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSuperclassURI(superclassURIstrs[i]);
|
||||
c2c.setSubclassURI(subclassURIstr);
|
||||
dao.deleteClasses2Classes(c2c);
|
||||
vcDao.deleteClasses2Classes(c2c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -112,7 +110,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSuperclassURI(request.getParameter("SuperclassURI"));
|
||||
c2c.setSubclassURI(request.getParameter("SubclassURI"));
|
||||
dao.insertNewClasses2Classes(c2c);
|
||||
vcDao.insertNewClasses2Classes(c2c);
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
|
|
@ -19,7 +19,6 @@ import edu.cornell.mannlib.vitro.webapp.auth.permissions.SimplePermission;
|
|||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||
import edu.cornell.mannlib.vitro.webapp.controller.Controllers;
|
||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||
|
||||
public class Classes2ClassesRetryController extends BaseEditController {
|
||||
|
@ -44,9 +43,8 @@ public class Classes2ClassesRetryController extends BaseEditController {
|
|||
action = epo.getAction();
|
||||
}
|
||||
|
||||
Classes2ClassesDao c2cDao = request.getFullWebappDaoFactory().getClasses2ClassesDao();
|
||||
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
||||
epo.setDataAccessObject(c2cDao);
|
||||
epo.setDataAccessObject(vcDao);
|
||||
Classes2Classes objectForEditing = new Classes2Classes();
|
||||
|
||||
String superclassURIstr = request.getParameter("SuperclassURI");
|
||||
|
|
|
@ -197,7 +197,7 @@ public class VclassRetryController extends BaseEditController {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(((VClass)newObj).getURI());
|
||||
c2c.setSuperclassURI(superclassURI);
|
||||
daoFactory.getClasses2ClassesDao().insertNewClasses2Classes(c2c);
|
||||
daoFactory.getVClassDao().insertNewClasses2Classes(c2c);
|
||||
}
|
||||
public void doUpdated(Object oldObj, Object newObj, EditProcessObject epo) {
|
||||
// nothing to do
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||
|
||||
package edu.cornell.mannlib.vitro.webapp.dao;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||
|
||||
public interface Classes2ClassesDao {
|
||||
|
||||
public abstract void deleteClasses2Classes(Classes2Classes c2c);
|
||||
|
||||
public abstract void insertNewClasses2Classes(Classes2Classes c2c);
|
||||
|
||||
}
|
|
@ -4,6 +4,7 @@ package edu.cornell.mannlib.vitro.webapp.dao;
|
|||
|
||||
import java.util.List;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||
|
||||
|
@ -67,6 +68,10 @@ public interface VClassDao {
|
|||
|
||||
void addVClassesToGroup(VClassGroup group);
|
||||
|
||||
void insertNewClasses2Classes(Classes2Classes c2c);
|
||||
|
||||
void deleteClasses2Classes(Classes2Classes c2c);
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
void addVClassesToGroup(VClassGroup group, boolean includeUninstantiatedClasses);/* (non-Javadoc)
|
||||
* @see edu.cornell.mannlib.vitro.webapp.dao.db.VClassDao#addVClassesToGroups(java.util.List)
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
package edu.cornell.mannlib.vitro.webapp.dao;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
public interface WebappDaoFactory {
|
||||
|
@ -60,11 +59,6 @@ public interface WebappDaoFactory {
|
|||
|
||||
/* =============== DAOs for ontology (TBox) manipulation =============== */
|
||||
|
||||
/**
|
||||
* returns a Data Access Object for working with class subsumption axioms
|
||||
*/
|
||||
public Classes2ClassesDao getClasses2ClassesDao();
|
||||
|
||||
/**
|
||||
* returns a Data Access Object for working with DataProperties
|
||||
*/
|
||||
|
|
|
@ -11,6 +11,7 @@ import java.util.List;
|
|||
import net.sf.jga.algorithms.Filter;
|
||||
import net.sf.jga.fn.UnaryFunctor;
|
||||
import net.sf.jga.fn.property.GetProperty;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||
|
@ -240,6 +241,14 @@ public class VClassDaoFiltering extends BaseFiltering implements VClassDao{
|
|||
return innerVClassDao.getBottomConcept();
|
||||
}
|
||||
|
||||
public void insertNewClasses2Classes(Classes2Classes c2c) {
|
||||
innerVClassDao.insertNewClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public void deleteClasses2Classes(Classes2Classes c2c) {
|
||||
innerVClassDao.deleteClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public boolean isSubClassOf(VClass vc1, VClass vc2) {
|
||||
return innerVClassDao.isSubClassOf(vc1, vc2);
|
||||
}
|
||||
|
|
|
@ -7,7 +7,6 @@ import java.util.Map;
|
|||
import java.util.Set;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||
|
@ -164,10 +163,6 @@ public class WebappDaoFactoryFiltering implements WebappDaoFactory {
|
|||
|
||||
/* ******************* non-filtering DAOs *************************** */
|
||||
|
||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
||||
return innerWebappDaoFactory.getClasses2ClassesDao();
|
||||
}
|
||||
|
||||
public DatatypeDao getDatatypeDao() {
|
||||
return innerWebappDaoFactory.getDatatypeDao();
|
||||
}
|
||||
|
|
|
@ -1,69 +0,0 @@
|
|||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||
|
||||
package edu.cornell.mannlib.vitro.webapp.dao.jena;
|
||||
|
||||
import com.hp.hpl.jena.ontology.OntModel;
|
||||
import com.hp.hpl.jena.ontology.OntResource;
|
||||
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.jena.event.EditEvent;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
public class Classes2ClassesDaoJena extends JenaBaseDao implements Classes2ClassesDao {
|
||||
|
||||
public Classes2ClassesDaoJena(WebappDaoFactoryJena wadf) {
|
||||
super(wadf);
|
||||
}
|
||||
|
||||
public void deleteClasses2Classes( Classes2Classes c2c ) {
|
||||
deleteClasses2Classes(c2c, getOntModelSelector().getTBoxModel());
|
||||
}
|
||||
|
||||
public void deleteClasses2Classes( Classes2Classes c2c, OntModel ontModel )
|
||||
{
|
||||
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());
|
||||
if ((subclass != null) && (superclass != null)) {
|
||||
ontModel.removeAll(subclass, RDFS.subClassOf, superclass);
|
||||
}
|
||||
if (subclass.isAnon()) {
|
||||
smartRemove(subclass, getOntModel());
|
||||
}
|
||||
if (superclass.isAnon()) {
|
||||
smartRemove(superclass, getOntModel());
|
||||
}
|
||||
} finally {
|
||||
ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false));
|
||||
ontModel.leaveCriticalSection();
|
||||
}
|
||||
}
|
||||
|
||||
public void insertNewClasses2Classes( Classes2Classes c2c ) {
|
||||
insertNewClasses2Classes(c2c, getOntModelSelector().getTBoxModel());
|
||||
}
|
||||
|
||||
public void insertNewClasses2Classes( Classes2Classes c2c, OntModel ontModel )
|
||||
{
|
||||
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());
|
||||
if ((subclass != null) && (superclass != null)) {
|
||||
ontModel.add(subclass, RDFS.subClassOf, superclass);
|
||||
}
|
||||
} finally {
|
||||
ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false));
|
||||
ontModel.leaveCriticalSection();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -313,7 +313,7 @@ public class VClassDaoJena extends JenaBaseDao implements VClassDao {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(vclassURI);
|
||||
c2c.setSuperclassURI(superclassURI);
|
||||
getWebappDaoFactory().getClasses2ClassesDao().insertNewClasses2Classes(c2c);
|
||||
insertNewClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public void removeSuperclass(VClass vclass, VClass superclass) {
|
||||
|
@ -324,7 +324,7 @@ public class VClassDaoJena extends JenaBaseDao implements VClassDao {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(vclassURI);
|
||||
c2c.setSuperclassURI(superclassURI);
|
||||
getWebappDaoFactory().getClasses2ClassesDao().deleteClasses2Classes(c2c);
|
||||
deleteClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public void addSubclass(VClass vclass, VClass subclass) {
|
||||
|
@ -335,7 +335,7 @@ public class VClassDaoJena extends JenaBaseDao implements VClassDao {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(subclassURI);
|
||||
c2c.setSuperclassURI(vclassURI);
|
||||
getWebappDaoFactory().getClasses2ClassesDao().insertNewClasses2Classes(c2c);
|
||||
insertNewClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public void removeSubclass(VClass vclass, VClass subclass) {
|
||||
|
@ -346,7 +346,7 @@ public class VClassDaoJena extends JenaBaseDao implements VClassDao {
|
|||
Classes2Classes c2c = new Classes2Classes();
|
||||
c2c.setSubclassURI(subclassURI);
|
||||
c2c.setSuperclassURI(vclassURI);
|
||||
getWebappDaoFactory().getClasses2ClassesDao().deleteClasses2Classes(c2c);
|
||||
deleteClasses2Classes(c2c);
|
||||
}
|
||||
|
||||
public void addEquivalentClass(String classURI, String equivalentClassURI) {
|
||||
|
@ -999,6 +999,52 @@ public class VClassDaoJena extends JenaBaseDao implements VClassDao {
|
|||
}
|
||||
}
|
||||
|
||||
public void deleteClasses2Classes( Classes2Classes c2c ) {
|
||||
deleteClasses2Classes(c2c, getOntModelSelector().getTBoxModel());
|
||||
}
|
||||
|
||||
public void deleteClasses2Classes( Classes2Classes c2c, OntModel ontModel )
|
||||
{
|
||||
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());
|
||||
if ((subclass != null) && (superclass != null)) {
|
||||
ontModel.removeAll(subclass, RDFS.subClassOf, superclass);
|
||||
}
|
||||
if (subclass.isAnon()) {
|
||||
smartRemove(subclass, getOntModel());
|
||||
}
|
||||
if (superclass.isAnon()) {
|
||||
smartRemove(superclass, getOntModel());
|
||||
}
|
||||
} finally {
|
||||
ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false));
|
||||
ontModel.leaveCriticalSection();
|
||||
}
|
||||
}
|
||||
|
||||
public void insertNewClasses2Classes( Classes2Classes c2c ) {
|
||||
insertNewClasses2Classes(c2c, getOntModelSelector().getTBoxModel());
|
||||
}
|
||||
|
||||
public void insertNewClasses2Classes( Classes2Classes c2c, OntModel ontModel )
|
||||
{
|
||||
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());
|
||||
if ((subclass != null) && (superclass != null)) {
|
||||
ontModel.add(subclass, RDFS.subClassOf, superclass);
|
||||
}
|
||||
} finally {
|
||||
ontModel.getBaseModel().notifyEvent(new EditEvent(getWebappDaoFactory().getUserURI(),false));
|
||||
ontModel.leaveCriticalSection();
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isSubClassOf(VClass vc1, VClass vc2) {
|
||||
if (vc1 == null || vc2 == null) {
|
||||
return false;
|
||||
|
|
|
@ -30,7 +30,6 @@ import com.hp.hpl.jena.shared.Lock;
|
|||
import com.hp.hpl.jena.util.iterator.ClosableIterator;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||
|
@ -312,13 +311,6 @@ public class WebappDaoFactoryJena implements WebappDaoFactory {
|
|||
return userAccountsDao = new UserAccountsDaoJena(this);
|
||||
}
|
||||
|
||||
Classes2ClassesDao classes2ClassesDao = null;
|
||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
||||
if(classes2ClassesDao == null )
|
||||
classes2ClassesDao = new Classes2ClassesDaoJena(this);
|
||||
return classes2ClassesDao;
|
||||
}
|
||||
|
||||
DataPropertyStatementDao dataPropertyStatementDao = null;
|
||||
public DataPropertyStatementDao getDataPropertyStatementDao() {
|
||||
if( dataPropertyStatementDao == null )
|
||||
|
|
|
@ -7,7 +7,6 @@ import java.util.Map;
|
|||
import java.util.Set;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||
|
@ -186,12 +185,6 @@ return this.objectPropertyStatementDao; }
|
|||
"WebappDaoFactory.getUserURI() not implemented.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
||||
throw new RuntimeException(
|
||||
"WebappDaoFactory.getClasses2ClassesDao() not implemented.");
|
||||
}
|
||||
|
||||
@Override
|
||||
public DatatypeDao getDatatypeDao() {
|
||||
throw new RuntimeException(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue