Add generics to VClassGroupDao and sub-classes; organize import statments.
This commit is contained in:
parent
1a9e53f7bf
commit
e774f52471
3 changed files with 95 additions and 95 deletions
|
@ -1,62 +1,62 @@
|
|||
/* $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.VClassGroup;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
|
||||
public interface VClassGroupDao {
|
||||
|
||||
public abstract VClassGroup getGroupByURI(String uri);
|
||||
|
||||
/**
|
||||
* Gets all of the ClassGroups as a map ordered by displayRank.
|
||||
* VClassGroup.getPublicName() -> VClassGroup
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public abstract LinkedHashMap getClassGroupMap();
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @return List
|
||||
*/
|
||||
public abstract List getPublicGroupsWithVClasses();
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @return List
|
||||
*/
|
||||
public abstract List getPublicGroupsWithVClasses(boolean displayOrder);
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @param includeUninstantiatedClasses
|
||||
* @return List
|
||||
*/
|
||||
public abstract List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses);
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @param includeUninstantiatedClasses
|
||||
* @param getIndividualCount
|
||||
* @return List
|
||||
*/
|
||||
public abstract List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses, boolean getIndividualCount);
|
||||
|
||||
|
||||
public abstract void sortGroupList(List groupList);
|
||||
|
||||
public abstract int removeUnpopulatedGroups(List /* of VClassGroup*/groups);
|
||||
|
||||
int insertNewVClassGroup(VClassGroup vcg);
|
||||
|
||||
void updateVClassGroup(VClassGroup vcg);
|
||||
|
||||
void deleteVClassGroup(VClassGroup vcg);
|
||||
package edu.cornell.mannlib.vitro.webapp.dao;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
|
||||
public interface VClassGroupDao {
|
||||
|
||||
public abstract VClassGroup getGroupByURI(String uri);
|
||||
|
||||
/**
|
||||
* Gets all of the ClassGroups as a map ordered by displayRank.
|
||||
* VClassGroup.getPublicName() -> VClassGroup
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public abstract LinkedHashMap<String,VClassGroup> getClassGroupMap();
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @return List
|
||||
*/
|
||||
public abstract List<VClassGroup> getPublicGroupsWithVClasses();
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @return List
|
||||
*/
|
||||
public abstract List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder);
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @param includeUninstantiatedClasses
|
||||
* @return List
|
||||
*/
|
||||
public abstract List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses);
|
||||
|
||||
/**
|
||||
* Return a list of VClassGroups with their associated VClasses
|
||||
* @param displayOrder
|
||||
* @param includeUninstantiatedClasses
|
||||
* @param getIndividualCount
|
||||
* @return List
|
||||
*/
|
||||
public abstract List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses, boolean getIndividualCount);
|
||||
|
||||
|
||||
public abstract void sortGroupList(List<VClassGroup> groupList);
|
||||
|
||||
public abstract int removeUnpopulatedGroups(List<VClassGroup> groups);
|
||||
|
||||
int insertNewVClassGroup(VClassGroup vcg);
|
||||
|
||||
void updateVClassGroup(VClassGroup vcg);
|
||||
|
||||
void deleteVClassGroup(VClassGroup vcg);
|
||||
}
|
|
@ -2,13 +2,16 @@
|
|||
|
||||
package edu.cornell.mannlib.vitro.webapp.dao.filtering;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
import java.util.Set;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassGroupDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.filtering.filters.VitroFilters;
|
||||
import net.sf.jga.fn.UnaryFunctor;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
public class VClassGroupDaoFiltering extends BaseFiltering implements VClassGroupDao {
|
||||
|
||||
|
@ -31,9 +34,9 @@ public class VClassGroupDaoFiltering extends BaseFiltering implements VClassGrou
|
|||
}
|
||||
|
||||
|
||||
public LinkedHashMap getClassGroupMap() {
|
||||
LinkedHashMap lhm = innerDao.getClassGroupMap();
|
||||
Set keys = lhm.keySet();
|
||||
public LinkedHashMap<String, VClassGroup> getClassGroupMap() {
|
||||
LinkedHashMap<String, VClassGroup> lhm = innerDao.getClassGroupMap();
|
||||
Set<String> keys = lhm.keySet();
|
||||
for( Object key : keys){
|
||||
VClassGroup vcg = (VClassGroup)lhm.get(key);
|
||||
if( vcg == null || !filters.getVClassGroupFilter().fn(vcg) ){
|
||||
|
@ -51,22 +54,22 @@ public class VClassGroupDaoFiltering extends BaseFiltering implements VClassGrou
|
|||
return null;
|
||||
}
|
||||
|
||||
public List getPublicGroupsWithVClasses() {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses() {
|
||||
return this.getPublicGroupsWithVClasses(false);
|
||||
}
|
||||
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder) {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder) {
|
||||
return this.getPublicGroupsWithVClasses(displayOrder,true);
|
||||
}
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) {
|
||||
return this.getPublicGroupsWithVClasses(displayOrder,includeUninstantiatedClasses,false);
|
||||
}
|
||||
/** filter both vclassgroups and their vclasses */
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses,
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses,
|
||||
boolean getIndividualCount) {
|
||||
|
||||
LinkedHashMap groupMap = this.getClassGroupMap();
|
||||
List<VClassGroup> groups = new ArrayList(groupMap.values());
|
||||
LinkedHashMap<String, VClassGroup> groupMap = this.getClassGroupMap();
|
||||
List<VClassGroup> groups = new ArrayList<VClassGroup>(groupMap.values());
|
||||
|
||||
VClassDao vclassDao = filteredDaos.getVClassDao();
|
||||
for( VClassGroup vg : groups){
|
||||
|
@ -88,12 +91,12 @@ public class VClassGroupDaoFiltering extends BaseFiltering implements VClassGrou
|
|||
}
|
||||
|
||||
|
||||
public int removeUnpopulatedGroups(List groups) {
|
||||
public int removeUnpopulatedGroups(List<VClassGroup> groups) {
|
||||
return innerDao.removeUnpopulatedGroups(groups);
|
||||
}
|
||||
|
||||
|
||||
public void sortGroupList(List groupList) {
|
||||
public void sortGroupList(List<VClassGroup> groupList) {
|
||||
innerDao.sortGroupList(groupList);
|
||||
}
|
||||
|
||||
|
|
|
@ -5,7 +5,6 @@ package edu.cornell.mannlib.vitro.webapp.dao.jena;
|
|||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
|
@ -22,12 +21,12 @@ import com.hp.hpl.jena.shared.Lock;
|
|||
import com.hp.hpl.jena.util.iterator.ClosableIterator;
|
||||
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||
import edu.cornell.mannlib.vitro.webapp.beans.VClassGroup;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.InsertException;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VClassGroupDao;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.VitroVocabulary;
|
||||
import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory;
|
||||
|
||||
public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
||||
|
||||
|
@ -58,12 +57,12 @@ public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
|||
}
|
||||
}
|
||||
|
||||
public LinkedHashMap getClassGroupMap() {
|
||||
public LinkedHashMap<String, VClassGroup> getClassGroupMap() {
|
||||
getOntModel().enterCriticalSection(Lock.READ);
|
||||
try {
|
||||
LinkedHashMap map = new LinkedHashMap();
|
||||
List groups = new ArrayList();
|
||||
ClosableIterator groupIt = getOntModel().listIndividuals(CLASSGROUP);
|
||||
LinkedHashMap<String, VClassGroup> map = new LinkedHashMap<String, VClassGroup>();
|
||||
List<VClassGroup> groups = new ArrayList<VClassGroup>();
|
||||
ClosableIterator<Individual> groupIt = getOntModel().listIndividuals(CLASSGROUP);
|
||||
try {
|
||||
while (groupIt.hasNext()) {
|
||||
Individual groupInd = (Individual) groupIt.next();
|
||||
|
@ -76,7 +75,7 @@ public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
|||
groupIt.close();
|
||||
}
|
||||
Collections.sort(groups);
|
||||
Iterator groupsIt = groups.iterator();
|
||||
Iterator<VClassGroup> groupsIt = groups.iterator();
|
||||
while (groupsIt.hasNext()) {
|
||||
VClassGroup group = (VClassGroup) groupsIt.next();
|
||||
map.put(group.getPublicName(), group);
|
||||
|
@ -103,25 +102,25 @@ public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
|||
}
|
||||
|
||||
|
||||
public List getPublicGroupsWithVClasses() {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses() {
|
||||
return getPublicGroupsWithVClasses(false);
|
||||
}
|
||||
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder) {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder) {
|
||||
return getPublicGroupsWithVClasses(displayOrder, true);
|
||||
}
|
||||
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) {
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) {
|
||||
return getPublicGroupsWithVClasses(displayOrder, includeUninstantiatedClasses, false);
|
||||
}
|
||||
|
||||
public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses,
|
||||
public List<VClassGroup> getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses,
|
||||
boolean getIndividualCount) {
|
||||
VClassDao classDao = getWebappDaoFactory().getVClassDao();
|
||||
getOntModel().enterCriticalSection(Lock.READ);
|
||||
try {
|
||||
List groups = new ArrayList();
|
||||
ClosableIterator groupIt = getOntModel().listIndividuals(CLASSGROUP);
|
||||
List<VClassGroup> groups = new ArrayList<VClassGroup>();
|
||||
ClosableIterator<Individual> groupIt = getOntModel().listIndividuals(CLASSGROUP);
|
||||
try {
|
||||
while (groupIt.hasNext()) {
|
||||
Individual grp = (Individual) groupIt.next();
|
||||
|
@ -230,14 +229,14 @@ public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
|||
|
||||
}
|
||||
|
||||
public int removeUnpopulatedGroups(List groups) {
|
||||
public int removeUnpopulatedGroups(List<VClassGroup> groups) {
|
||||
if (groups==null || groups.size()==0)
|
||||
return 0;
|
||||
int removedGroupsCount = 0;
|
||||
ListIterator it = groups.listIterator();
|
||||
ListIterator<VClassGroup> it = groups.listIterator();
|
||||
while(it.hasNext()){
|
||||
VClassGroup group = (VClassGroup) it.next();
|
||||
List classes = group.getVitroClassList();
|
||||
List<VClass> classes = group.getVitroClassList();
|
||||
if( classes == null || classes.size() < 1 ){
|
||||
removedGroupsCount++;
|
||||
it.remove();
|
||||
|
@ -246,11 +245,9 @@ public class VClassGroupDaoJena extends JenaBaseDao implements VClassGroupDao {
|
|||
return removedGroupsCount;
|
||||
}
|
||||
|
||||
public void sortGroupList(List groupList) {
|
||||
Collections.sort(groupList, new Comparator() {
|
||||
public int compare(Object obj1, Object obj2) {
|
||||
VClassGroup first = (VClassGroup) obj1;
|
||||
VClassGroup second = (VClassGroup) obj2;
|
||||
public void sortGroupList(List<VClassGroup> groupList) {
|
||||
Collections.sort(groupList, new Comparator<VClassGroup>() {
|
||||
public int compare(VClassGroup first, VClassGroup second) {
|
||||
if (first!=null) {
|
||||
if (second!=null) {
|
||||
return (first.getDisplayRank()-second.getDisplayRank());
|
||||
|
|
Loading…
Add table
Reference in a new issue