Count queries MUST always return Long now. Cleanup all that do not.

This commit is contained in:
Tim Donohue
2024-03-06 10:40:31 -06:00
parent f18d1e1cf0
commit 3a0ad487c4
8 changed files with 30 additions and 30 deletions

View File

@@ -59,9 +59,9 @@ public class EntityTypeDAOImpl extends AbstractHibernateDAO<EntityType> implemen
@Override
public int countEntityTypesByNames(Context context, List<String> names) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, EntityType.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<EntityType> entityTypeRoot = criteriaQuery.from(EntityType.class);
criteriaQuery.select(entityTypeRoot);
criteriaQuery.select(criteriaBuilder.count(entityTypeRoot));
criteriaQuery.where(entityTypeRoot.get(EntityType_.LABEL).in(names));
return count(context, criteriaQuery, criteriaBuilder, entityTypeRoot);
}

View File

@@ -351,9 +351,9 @@ public class ItemDAOImpl extends AbstractHibernateDSODAO<Item> implements ItemDA
@Override
public int countArchivedByCollectionExcludingOwning(Context context, Collection collection) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Item> criteriaQuery = getCriteriaQuery(criteriaBuilder, Item.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Item> itemRoot = criteriaQuery.from(Item.class);
criteriaQuery.select(itemRoot);
criteriaQuery.select(criteriaBuilder.count(itemRoot));
criteriaQuery.where(criteriaBuilder.and(
criteriaBuilder.notEqual(itemRoot.get(Item_.owningCollection), collection),
criteriaBuilder.isMember(collection, itemRoot.get(Item_.collections)),
@@ -408,9 +408,9 @@ public class ItemDAOImpl extends AbstractHibernateDSODAO<Item> implements ItemDA
// Build query to select all Items have this "collection" in their list of collections
// AND also have the inArchive or isWithdrawn set as specified
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Item> criteriaQuery = getCriteriaQuery(criteriaBuilder, Item.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Item> itemRoot = criteriaQuery.from(Item.class);
criteriaQuery.select(itemRoot);
criteriaQuery.select(criteriaBuilder.count(itemRoot));
criteriaQuery.where(criteriaBuilder.and(
criteriaBuilder.equal(itemRoot.get(Item_.inArchive), includeArchived),
criteriaBuilder.equal(itemRoot.get(Item_.withdrawn), includeWithdrawn),

View File

@@ -75,9 +75,9 @@ public class ProcessDAOImpl extends AbstractHibernateDAO<Process> implements Pro
public int countRows(Context context) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Process.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Process> processRoot = criteriaQuery.from(Process.class);
criteriaQuery.select(processRoot);
criteriaQuery.select(criteriaBuilder.count(processRoot));
return count(context, criteriaQuery, criteriaBuilder, processRoot);
@@ -143,9 +143,9 @@ public class ProcessDAOImpl extends AbstractHibernateDAO<Process> implements Pro
throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Process.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Process> processRoot = criteriaQuery.from(Process.class);
criteriaQuery.select(processRoot);
criteriaQuery.select(criteriaBuilder.count(processRoot));
addProcessQueryParameters(processQueryParameterContainer, criteriaBuilder, criteriaQuery, processRoot);
return count(context, criteriaQuery, criteriaBuilder, processRoot);
@@ -188,10 +188,10 @@ public class ProcessDAOImpl extends AbstractHibernateDAO<Process> implements Pro
@Override
public int countByUser(Context context, EPerson user) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Process> criteriaQuery = getCriteriaQuery(criteriaBuilder, Process.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Process> processRoot = criteriaQuery.from(Process.class);
criteriaQuery.select(processRoot);
criteriaQuery.select(criteriaBuilder.count(processRoot));
criteriaQuery.where(criteriaBuilder.equal(processRoot.get(Process_.E_PERSON), user));
return count(context, criteriaQuery, criteriaBuilder, processRoot);
}

View File

@@ -167,9 +167,9 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
Context context, Item item, boolean excludeTilted, boolean excludeNonLatest
) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Relationship.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Relationship> relationshipRoot = criteriaQuery.from(Relationship.class);
criteriaQuery.select(relationshipRoot);
criteriaQuery.select(criteriaBuilder.count(relationshipRoot));
criteriaQuery.where(
criteriaBuilder.or(
@@ -355,9 +355,9 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
public int countByRelationshipType(Context context, RelationshipType relationshipType) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Relationship.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Relationship> relationshipRoot = criteriaQuery.from(Relationship.class);
criteriaQuery.select(relationshipRoot);
criteriaQuery.select(criteriaBuilder.count(relationshipRoot));
criteriaQuery
.where(criteriaBuilder.equal(relationshipRoot.get(Relationship_.relationshipType), relationshipType));
return count(context, criteriaQuery, criteriaBuilder, relationshipRoot);
@@ -366,9 +366,9 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
@Override
public int countRows(Context context) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Relationship.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Relationship> relationshipRoot = criteriaQuery.from(Relationship.class);
criteriaQuery.select(relationshipRoot);
criteriaQuery.select(criteriaBuilder.count(relationshipRoot));
return count(context, criteriaQuery, criteriaBuilder, relationshipRoot);
}
@@ -377,9 +377,9 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
Context context, Item item, RelationshipType relationshipType, boolean isLeft, boolean excludeNonLatest
) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Relationship.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Relationship> relationshipRoot = criteriaQuery.from(Relationship.class);
criteriaQuery.select(relationshipRoot);
criteriaQuery.select(criteriaBuilder.count(relationshipRoot));
if (isLeft) {
criteriaQuery.where(
@@ -407,8 +407,9 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
ids.add(relationshipType.getID());
}
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, Relationship.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<Relationship> relationshipRoot = criteriaQuery.from(Relationship.class);
criteriaQuery.select(criteriaBuilder.count(relationshipRoot));
criteriaQuery.where(relationshipRoot.get(Relationship_.relationshipType).in(ids));
return count(context, criteriaQuery, criteriaBuilder, relationshipRoot);
}

View File

@@ -128,9 +128,9 @@ public class RelationshipTypeDAOImpl extends AbstractHibernateDAO<RelationshipTy
@Override
public int countByEntityType(Context context, EntityType entityType) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery criteriaQuery = getCriteriaQuery(criteriaBuilder, RelationshipType.class);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<RelationshipType> relationshipTypeRoot = criteriaQuery.from(RelationshipType.class);
criteriaQuery.select(relationshipTypeRoot);
criteriaQuery.select(criteriaBuilder.count(relationshipTypeRoot));
criteriaQuery.where(criteriaBuilder.or(
criteriaBuilder.equal(relationshipTypeRoot.get(RelationshipType_.leftType), entityType),
criteriaBuilder.equal(relationshipTypeRoot.get(RelationshipType_.rightType), entityType)

View File

@@ -150,11 +150,10 @@ public class HarvestedCollectionDAOImpl extends AbstractHibernateDAO<HarvestedCo
@Override
public int count(Context context) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<HarvestedCollection> harvestedCollectionRoot = criteriaQuery.from(HarvestedCollection.class);
criteriaQuery.select(criteriaBuilder.count(harvestedCollectionRoot));
return count(context, criteriaQuery, criteriaBuilder, harvestedCollectionRoot);
}

View File

@@ -78,7 +78,7 @@ public class InProgressUserDAOImpl extends AbstractHibernateDAO<InProgressUser>
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<InProgressUser> inProgressUserRoot = criteriaQuery.from(InProgressUser.class);
criteriaQuery.select(criteriaBuilder.count(inProgressUserRoot));
criteriaQuery.where(criteriaBuilder.and(
criteriaBuilder.equal(inProgressUserRoot.get(InProgressUser_.workflowItem), workflowItem),
criteriaBuilder.equal(inProgressUserRoot.get(InProgressUser_.finished), false)
@@ -94,7 +94,7 @@ public class InProgressUserDAOImpl extends AbstractHibernateDAO<InProgressUser>
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<InProgressUser> inProgressUserRoot = criteriaQuery.from(InProgressUser.class);
criteriaQuery.select(criteriaBuilder.count(inProgressUserRoot));
criteriaQuery.where(criteriaBuilder.and(
criteriaBuilder.equal(inProgressUserRoot.get(InProgressUser_.workflowItem), workflowItem),
criteriaBuilder.equal(inProgressUserRoot.get(InProgressUser_.finished), true)

View File

@@ -66,12 +66,11 @@ public class XmlWorkflowItemDAOImpl extends AbstractHibernateDAO<XmlWorkflowItem
@Override
public int countAllInCollection(Context context, Collection collection) throws SQLException {
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<XmlWorkflowItem> xmlWorkflowItemRoot = criteriaQuery.from(XmlWorkflowItem.class);
criteriaQuery.select(criteriaBuilder.count(xmlWorkflowItemRoot));
if (collection != null) {
criteriaQuery.where(criteriaBuilder.equal(xmlWorkflowItemRoot.get(XmlWorkflowItem_.collection),
collection));
@@ -109,7 +108,8 @@ public class XmlWorkflowItemDAOImpl extends AbstractHibernateDAO<XmlWorkflowItem
CriteriaBuilder criteriaBuilder = getCriteriaBuilder(context);
CriteriaQuery<Long> criteriaQuery = criteriaBuilder.createQuery(Long.class);
Root<XmlWorkflowItem> xmlWorkflowItemRoot = criteriaQuery.from(XmlWorkflowItem.class);
Join<XmlWorkflowItem, Item> join = xmlWorkflowItemRoot.join("item");
criteriaQuery.select(criteriaBuilder.count(xmlWorkflowItemRoot));
Join<XmlWorkflowItem, Item> join = xmlWorkflowItemRoot.join(XmlWorkflowItem_.item);
criteriaQuery.where(criteriaBuilder.equal(join.get(Item_.submitter), ep));
return count(context, criteriaQuery, criteriaBuilder, xmlWorkflowItemRoot);
}