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.auth.permissions.SimplePermission;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
import edu.cornell.mannlib.vitro.webapp.beans.Classes2Classes;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||||
|
|
||||||
public class Classes2ClassesOperationController extends BaseEditController {
|
public class Classes2ClassesOperationController extends BaseEditController {
|
||||||
|
@ -58,7 +57,6 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Classes2ClassesDao dao = request.getFullWebappDaoFactory().getClasses2ClassesDao();
|
|
||||||
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
||||||
|
|
||||||
String modeStr = request.getParameter("opMode");
|
String modeStr = request.getParameter("opMode");
|
||||||
|
@ -81,7 +79,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
||||||
Classes2Classes c2c = new Classes2Classes();
|
Classes2Classes c2c = new Classes2Classes();
|
||||||
c2c.setSubclassURI(subclassURIstrs[i]);
|
c2c.setSubclassURI(subclassURIstrs[i]);
|
||||||
c2c.setSuperclassURI(superclassURIstr);
|
c2c.setSuperclassURI(superclassURIstr);
|
||||||
dao.deleteClasses2Classes(c2c);
|
vcDao.deleteClasses2Classes(c2c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -98,7 +96,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
||||||
Classes2Classes c2c = new Classes2Classes();
|
Classes2Classes c2c = new Classes2Classes();
|
||||||
c2c.setSuperclassURI(superclassURIstrs[i]);
|
c2c.setSuperclassURI(superclassURIstrs[i]);
|
||||||
c2c.setSubclassURI(subclassURIstr);
|
c2c.setSubclassURI(subclassURIstr);
|
||||||
dao.deleteClasses2Classes(c2c);
|
vcDao.deleteClasses2Classes(c2c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -112,7 +110,7 @@ public class Classes2ClassesOperationController extends BaseEditController {
|
||||||
Classes2Classes c2c = new Classes2Classes();
|
Classes2Classes c2c = new Classes2Classes();
|
||||||
c2c.setSuperclassURI(request.getParameter("SuperclassURI"));
|
c2c.setSuperclassURI(request.getParameter("SuperclassURI"));
|
||||||
c2c.setSubclassURI(request.getParameter("SubclassURI"));
|
c2c.setSubclassURI(request.getParameter("SubclassURI"));
|
||||||
dao.insertNewClasses2Classes(c2c);
|
vcDao.insertNewClasses2Classes(c2c);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} 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.beans.Classes2Classes;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.Controllers;
|
import edu.cornell.mannlib.vitro.webapp.controller.Controllers;
|
||||||
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.Classes2ClassesDao;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||||
|
|
||||||
public class Classes2ClassesRetryController extends BaseEditController {
|
public class Classes2ClassesRetryController extends BaseEditController {
|
||||||
|
@ -44,9 +43,8 @@ public class Classes2ClassesRetryController extends BaseEditController {
|
||||||
action = epo.getAction();
|
action = epo.getAction();
|
||||||
}
|
}
|
||||||
|
|
||||||
Classes2ClassesDao c2cDao = request.getFullWebappDaoFactory().getClasses2ClassesDao();
|
|
||||||
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
VClassDao vcDao = request.getFullWebappDaoFactory().getVClassDao();
|
||||||
epo.setDataAccessObject(c2cDao);
|
epo.setDataAccessObject(vcDao);
|
||||||
Classes2Classes objectForEditing = new Classes2Classes();
|
Classes2Classes objectForEditing = new Classes2Classes();
|
||||||
|
|
||||||
String superclassURIstr = request.getParameter("SuperclassURI");
|
String superclassURIstr = request.getParameter("SuperclassURI");
|
||||||
|
|
|
@ -197,7 +197,7 @@ public class VclassRetryController extends BaseEditController {
|
||||||
Classes2Classes c2c = new Classes2Classes();
|
Classes2Classes c2c = new Classes2Classes();
|
||||||
c2c.setSubclassURI(((VClass)newObj).getURI());
|
c2c.setSubclassURI(((VClass)newObj).getURI());
|
||||||
c2c.setSuperclassURI(superclassURI);
|
c2c.setSuperclassURI(superclassURI);
|
||||||
daoFactory.getClasses2ClassesDao().insertNewClasses2Classes(c2c);
|
daoFactory.getVClassDao().insertNewClasses2Classes(c2c);
|
||||||
}
|
}
|
||||||
public void doUpdated(Object oldObj, Object newObj, EditProcessObject epo) {
|
public void doUpdated(Object oldObj, Object newObj, EditProcessObject epo) {
|
||||||
// nothing to do
|
// 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 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.VClass;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||||
|
|
||||||
|
@ -65,7 +66,11 @@ public interface VClassDao {
|
||||||
|
|
||||||
List <VClass> getVClassesForProperty(String vclassURI, String propertyURI);
|
List <VClass> getVClassesForProperty(String vclassURI, String propertyURI);
|
||||||
|
|
||||||
void addVClassesToGroup(VClassGroup group);
|
void addVClassesToGroup(VClassGroup group);
|
||||||
|
|
||||||
|
void insertNewClasses2Classes(Classes2Classes c2c);
|
||||||
|
|
||||||
|
void deleteClasses2Classes(Classes2Classes c2c);
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
void addVClassesToGroup(VClassGroup group, boolean includeUninstantiatedClasses);/* (non-Javadoc)
|
void addVClassesToGroup(VClassGroup group, boolean includeUninstantiatedClasses);/* (non-Javadoc)
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
package edu.cornell.mannlib.vitro.webapp.dao;
|
package edu.cornell.mannlib.vitro.webapp.dao;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
public interface WebappDaoFactory {
|
public interface WebappDaoFactory {
|
||||||
|
@ -60,11 +59,6 @@ public interface WebappDaoFactory {
|
||||||
|
|
||||||
/* =============== DAOs for ontology (TBox) manipulation =============== */
|
/* =============== 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
|
* 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.algorithms.Filter;
|
||||||
import net.sf.jga.fn.UnaryFunctor;
|
import net.sf.jga.fn.UnaryFunctor;
|
||||||
import net.sf.jga.fn.property.GetProperty;
|
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.Individual;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||||
|
@ -240,6 +241,14 @@ public class VClassDaoFiltering extends BaseFiltering implements VClassDao{
|
||||||
return innerVClassDao.getBottomConcept();
|
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) {
|
public boolean isSubClassOf(VClass vc1, VClass vc2) {
|
||||||
return innerVClassDao.isSubClassOf(vc1, vc2);
|
return innerVClassDao.isSubClassOf(vc1, vc2);
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,6 @@ import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
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.DataPropertyDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||||
|
@ -164,10 +163,6 @@ public class WebappDaoFactoryFiltering implements WebappDaoFactory {
|
||||||
|
|
||||||
/* ******************* non-filtering DAOs *************************** */
|
/* ******************* non-filtering DAOs *************************** */
|
||||||
|
|
||||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
|
||||||
return innerWebappDaoFactory.getClasses2ClassesDao();
|
|
||||||
}
|
|
||||||
|
|
||||||
public DatatypeDao getDatatypeDao() {
|
public DatatypeDao getDatatypeDao() {
|
||||||
return innerWebappDaoFactory.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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load diff
|
@ -30,7 +30,6 @@ import com.hp.hpl.jena.shared.Lock;
|
||||||
import com.hp.hpl.jena.util.iterator.ClosableIterator;
|
import com.hp.hpl.jena.util.iterator.ClosableIterator;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
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.DataPropertyDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||||
|
@ -311,13 +310,6 @@ public class WebappDaoFactoryJena implements WebappDaoFactory {
|
||||||
else
|
else
|
||||||
return userAccountsDao = new UserAccountsDaoJena(this);
|
return userAccountsDao = new UserAccountsDaoJena(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
Classes2ClassesDao classes2ClassesDao = null;
|
|
||||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
|
||||||
if(classes2ClassesDao == null )
|
|
||||||
classes2ClassesDao = new Classes2ClassesDaoJena(this);
|
|
||||||
return classes2ClassesDao;
|
|
||||||
}
|
|
||||||
|
|
||||||
DataPropertyStatementDao dataPropertyStatementDao = null;
|
DataPropertyStatementDao dataPropertyStatementDao = null;
|
||||||
public DataPropertyStatementDao getDataPropertyStatementDao() {
|
public DataPropertyStatementDao getDataPropertyStatementDao() {
|
||||||
|
|
|
@ -7,7 +7,6 @@ import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.ApplicationDao;
|
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.DataPropertyDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DataPropertyStatementDao;
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
import edu.cornell.mannlib.vitro.webapp.dao.DatatypeDao;
|
||||||
|
@ -186,12 +185,6 @@ return this.objectPropertyStatementDao; }
|
||||||
"WebappDaoFactory.getUserURI() not implemented.");
|
"WebappDaoFactory.getUserURI() not implemented.");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Classes2ClassesDao getClasses2ClassesDao() {
|
|
||||||
throw new RuntimeException(
|
|
||||||
"WebappDaoFactory.getClasses2ClassesDao() not implemented.");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DatatypeDao getDatatypeDao() {
|
public DatatypeDao getDatatypeDao() {
|
||||||
throw new RuntimeException(
|
throw new RuntimeException(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue