diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/VClassGroupDao.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/VClassGroupDao.java index 1f1e47f9b..72e169e69 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/VClassGroupDao.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/VClassGroupDao.java @@ -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 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 groups); + + int insertNewVClassGroup(VClassGroup vcg); + + void updateVClassGroup(VClassGroup vcg); + + void deleteVClassGroup(VClassGroup vcg); } \ No newline at end of file diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/filtering/VClassGroupDaoFiltering.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/filtering/VClassGroupDaoFiltering.java index c25f5c727..dbbbb9b38 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/filtering/VClassGroupDaoFiltering.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/filtering/VClassGroupDaoFiltering.java @@ -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 getClassGroupMap() { + LinkedHashMap lhm = innerDao.getClassGroupMap(); + Set 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 getPublicGroupsWithVClasses() { return this.getPublicGroupsWithVClasses(false); } - public List getPublicGroupsWithVClasses(boolean displayOrder) { + public List getPublicGroupsWithVClasses(boolean displayOrder) { return this.getPublicGroupsWithVClasses(displayOrder,true); } - public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) { + public List 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 getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses, boolean getIndividualCount) { - LinkedHashMap groupMap = this.getClassGroupMap(); - List groups = new ArrayList(groupMap.values()); + LinkedHashMap groupMap = this.getClassGroupMap(); + List groups = new ArrayList(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 groups) { return innerDao.removeUnpopulatedGroups(groups); } - public void sortGroupList(List groupList) { + public void sortGroupList(List groupList) { innerDao.sortGroupList(groupList); } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupDaoJena.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupDaoJena.java index 4d6533e0b..f13bba814 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupDaoJena.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupDaoJena.java @@ -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 getClassGroupMap() { getOntModel().enterCriticalSection(Lock.READ); try { - LinkedHashMap map = new LinkedHashMap(); - List groups = new ArrayList(); - ClosableIterator groupIt = getOntModel().listIndividuals(CLASSGROUP); + LinkedHashMap map = new LinkedHashMap(); + List groups = new ArrayList(); + ClosableIterator 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 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 getPublicGroupsWithVClasses() { return getPublicGroupsWithVClasses(false); } - public List getPublicGroupsWithVClasses(boolean displayOrder) { + public List getPublicGroupsWithVClasses(boolean displayOrder) { return getPublicGroupsWithVClasses(displayOrder, true); } - public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) { + public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses) { return getPublicGroupsWithVClasses(displayOrder, includeUninstantiatedClasses, false); } - public List getPublicGroupsWithVClasses(boolean displayOrder, boolean includeUninstantiatedClasses, + public List 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 groups = new ArrayList(); + ClosableIterator 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 groups) { if (groups==null || groups.size()==0) return 0; int removedGroupsCount = 0; - ListIterator it = groups.listIterator(); + ListIterator it = groups.listIterator(); while(it.hasNext()){ VClassGroup group = (VClassGroup) it.next(); - List classes = group.getVitroClassList(); + List 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 groupList) { + Collections.sort(groupList, new Comparator() { + public int compare(VClassGroup first, VClassGroup second) { if (first!=null) { if (second!=null) { return (first.getDisplayRank()-second.getDisplayRank());