NIHVIVO-3532 get rid of Classes2ClassesDao

This commit is contained in:
brianjlowe 2012-03-22 20:00:06 +00:00
parent 3a6a3b985a
commit 94717a3705
12 changed files with 765 additions and 817 deletions

View file

@ -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) {

View file

@ -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");

View file

@ -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

View file

@ -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);
}

View file

@ -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)

View file

@ -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
*/

View file

@ -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);
}

View file

@ -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();
}

View file

@ -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();
}
}
}

View file

@ -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 )

View file

@ -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(