mirror of
https://github.com/DSpace/DSpace.git
synced 2025-10-15 14:03:17 +00:00
Fix Hibernate 6 syntax of several queries. Must use Hibernate name and not SQL database column name.
This commit is contained in:
@@ -303,8 +303,8 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countByEPerson(Context context, EPerson ePerson) throws SQLException {
|
public int countByEPerson(Context context, EPerson ePerson) throws SQLException {
|
||||||
Query query = createQuery(context,
|
Query query = createQuery(context,
|
||||||
"SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName() + " WHERE eperson_id = (:epersonUuid) ");
|
"SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName() + " WHERE eperson = :eperson ");
|
||||||
query.setParameter("epersonUuid", ePerson.getID());
|
query.setParameter("eperson", ePerson);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -324,9 +324,9 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countByEPersonAndResourceUuid(Context context, EPerson eperson, UUID resourceUuid) throws SQLException {
|
public int countByEPersonAndResourceUuid(Context context, EPerson eperson, UUID resourceUuid) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
||||||
+ " WHERE eperson_id = (:epersonUuid) AND dspace_object = (:resourceUuid) ");
|
+ " WHERE eperson = :eperson AND dSpaceObject.id = :resourceUuid ");
|
||||||
query.setParameter("resourceUuid", resourceUuid);
|
query.setParameter("resourceUuid", resourceUuid);
|
||||||
query.setParameter("epersonUuid", eperson.getID());
|
query.setParameter("eperson", eperson);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -346,7 +346,7 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countByResouceUuidAndActionId(Context context, UUID resourceUuid, int actionId) throws SQLException {
|
public int countByResouceUuidAndActionId(Context context, UUID resourceUuid, int actionId) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
||||||
+ " WHERE dspace_object = (:resourceUuid) AND action_id = (:actionId) ");
|
+ " WHERE dSpaceObject.id = :resourceUuid AND actionId = :actionId ");
|
||||||
query.setParameter("resourceUuid", resourceUuid);
|
query.setParameter("resourceUuid", resourceUuid);
|
||||||
query.setParameter("actionId", actionId);
|
query.setParameter("actionId", actionId);
|
||||||
return count(query);
|
return count(query);
|
||||||
@@ -366,7 +366,7 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countByResourceUuid(Context context, UUID resourceUuid) throws SQLException {
|
public int countByResourceUuid(Context context, UUID resourceUuid) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
||||||
+ " WHERE dspace_object = (:resourceUuid) ");
|
+ " WHERE dSpaceObject.id = :resourceUuid ");
|
||||||
query.setParameter("resourceUuid", resourceUuid);
|
query.setParameter("resourceUuid", resourceUuid);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
@@ -384,8 +384,8 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countResourcePolicyByGroup(Context context, Group group) throws SQLException {
|
public int countResourcePolicyByGroup(Context context, Group group) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) " + "FROM " + ResourcePolicy.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) " + "FROM " + ResourcePolicy.class.getSimpleName()
|
||||||
+ " WHERE epersongroup_id = (:groupUuid) ");
|
+ " WHERE epersonGroup = :group ");
|
||||||
query.setParameter("groupUuid", group.getID());
|
query.setParameter("group", group);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -405,9 +405,9 @@ public class ResourcePolicyDAOImpl extends AbstractHibernateDAO<ResourcePolicy>
|
|||||||
@Override
|
@Override
|
||||||
public int countByGroupAndResourceUuid(Context context, Group group, UUID resourceUuid) throws SQLException {
|
public int countByGroupAndResourceUuid(Context context, Group group, UUID resourceUuid) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) FROM " + ResourcePolicy.class.getSimpleName()
|
||||||
+ " WHERE dspace_object = (:resourceUuid) AND epersongroup_id = (:groupUuid) ");
|
+ " WHERE dSpaceObject.id = :resourceUuid AND epersonGroup = :group ");
|
||||||
query.setParameter("resourceUuid", resourceUuid);
|
query.setParameter("resourceUuid", resourceUuid);
|
||||||
query.setParameter("groupUuid", group.getID());
|
query.setParameter("group", group);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -1435,7 +1435,7 @@ prevent the generation of resource policy entry values with null dspace_object a
|
|||||||
public List<Item> findByMetadataQuery(Context context, List<QueryPredicate> queryPredicates,
|
public List<Item> findByMetadataQuery(Context context, List<QueryPredicate> queryPredicates,
|
||||||
List<UUID> collectionUuids, long offset, int limit)
|
List<UUID> collectionUuids, long offset, int limit)
|
||||||
throws SQLException {
|
throws SQLException {
|
||||||
return itemDAO.findByMetadataQuery(context, queryPredicates, collectionUuids, "text_value ~ ?",
|
return itemDAO.findByMetadataQuery(context, queryPredicates, collectionUuids, "value ~ ?",
|
||||||
offset, limit);
|
offset, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1444,7 +1444,7 @@ prevent the generation of resource policy entry values with null dspace_object a
|
|||||||
public long countForMetadataQuery(Context context, List<QueryPredicate> queryPredicates,
|
public long countForMetadataQuery(Context context, List<QueryPredicate> queryPredicates,
|
||||||
List<UUID> collectionUuids)
|
List<UUID> collectionUuids)
|
||||||
throws SQLException {
|
throws SQLException {
|
||||||
return itemDAO.countForMetadataQuery(context, queryPredicates, collectionUuids, "text_value ~ ?");
|
return itemDAO.countForMetadataQuery(context, queryPredicates, collectionUuids, "value ~ ?");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -88,7 +88,7 @@ public interface ItemDAO extends DSpaceObjectLegacySupportDAO<Item> {
|
|||||||
* @param collectionUuids UUIDs of the collections to search.
|
* @param collectionUuids UUIDs of the collections to search.
|
||||||
* If none are provided, the entire repository will be searched.
|
* If none are provided, the entire repository will be searched.
|
||||||
* @param regexClause Syntactic expression used to query the database using a regular expression
|
* @param regexClause Syntactic expression used to query the database using a regular expression
|
||||||
* (e.g.: "text_value ~ ?")
|
* (e.g.: "value ~ ?")
|
||||||
* @param offset The offset for the query
|
* @param offset The offset for the query
|
||||||
* @param limit Maximum number of items to return
|
* @param limit Maximum number of items to return
|
||||||
* @return A list containing the items that match the provided criteria
|
* @return A list containing the items that match the provided criteria
|
||||||
|
@@ -84,7 +84,7 @@ public class MetadataValueDAOImpl extends AbstractHibernateDAO<MetadataValue> im
|
|||||||
public MetadataValue getMinimum(Context context, int metadataFieldId)
|
public MetadataValue getMinimum(Context context, int metadataFieldId)
|
||||||
throws SQLException {
|
throws SQLException {
|
||||||
String queryString = "SELECT m FROM MetadataValue m JOIN FETCH m.metadataField WHERE m.metadataField.id = " +
|
String queryString = "SELECT m FROM MetadataValue m JOIN FETCH m.metadataField WHERE m.metadataField.id = " +
|
||||||
":metadata_field_id ORDER BY text_value";
|
":metadata_field_id ORDER BY value";
|
||||||
Query query = createQuery(context, queryString);
|
Query query = createQuery(context, queryString);
|
||||||
query.setParameter("metadata_field_id", metadataFieldId);
|
query.setParameter("metadata_field_id", metadataFieldId);
|
||||||
query.setMaxResults(1);
|
query.setMaxResults(1);
|
||||||
|
@@ -418,14 +418,14 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
|
|||||||
public List<Relationship> findByItemAndRelationshipTypeAndList(Context context, UUID focusUUID,
|
public List<Relationship> findByItemAndRelationshipTypeAndList(Context context, UUID focusUUID,
|
||||||
RelationshipType relationshipType, List<UUID> items, boolean isLeft,
|
RelationshipType relationshipType, List<UUID> items, boolean isLeft,
|
||||||
int offset, int limit) throws SQLException {
|
int offset, int limit) throws SQLException {
|
||||||
String side = isLeft ? "left_id" : "right_id";
|
String side = isLeft ? "leftItem.id" : "rightItem.id";
|
||||||
String otherSide = !isLeft ? "left_id" : "right_id";
|
String otherSide = !isLeft ? "leftItem.id" : "rightItem.id";
|
||||||
Query query = createQuery(context, "FROM " + Relationship.class.getSimpleName() +
|
Query query = createQuery(context, "FROM " + Relationship.class.getSimpleName() +
|
||||||
" WHERE type_id = (:typeId) " +
|
" WHERE relationshipType = :type " +
|
||||||
"AND " + side + " = (:focusUUID) " +
|
"AND " + side + " = (:focusUUID) " +
|
||||||
"AND " + otherSide + " in (:list) " +
|
"AND " + otherSide + " in (:list) " +
|
||||||
"ORDER BY id");
|
"ORDER BY id");
|
||||||
query.setParameter("typeId", relationshipType.getID());
|
query.setParameter("type", relationshipType);
|
||||||
query.setParameter("focusUUID", focusUUID);
|
query.setParameter("focusUUID", focusUUID);
|
||||||
query.setParameter("list", items);
|
query.setParameter("list", items);
|
||||||
return list(query, limit, offset);
|
return list(query, limit, offset);
|
||||||
@@ -434,14 +434,14 @@ public class RelationshipDAOImpl extends AbstractHibernateDAO<Relationship> impl
|
|||||||
@Override
|
@Override
|
||||||
public int countByItemAndRelationshipTypeAndList(Context context, UUID focusUUID, RelationshipType relationshipType,
|
public int countByItemAndRelationshipTypeAndList(Context context, UUID focusUUID, RelationshipType relationshipType,
|
||||||
List<UUID> items, boolean isLeft) throws SQLException {
|
List<UUID> items, boolean isLeft) throws SQLException {
|
||||||
String side = isLeft ? "left_id" : "right_id";
|
String side = isLeft ? "leftItem.id" : "rightItem.id";
|
||||||
String otherSide = !isLeft ? "left_id" : "right_id";
|
String otherSide = !isLeft ? "leftItem.id" : "rightItem.id";
|
||||||
Query query = createQuery(context, "SELECT count(*) " +
|
Query query = createQuery(context, "SELECT count(*) " +
|
||||||
"FROM " + Relationship.class.getSimpleName() +
|
"FROM " + Relationship.class.getSimpleName() +
|
||||||
" WHERE type_id = (:typeId) " +
|
" WHERE relationshipType = :type " +
|
||||||
"AND " + side + " = (:focusUUID) " +
|
"AND " + side + " = (:focusUUID) " +
|
||||||
"AND " + otherSide + " in (:list)");
|
"AND " + otherSide + " in (:list)");
|
||||||
query.setParameter("typeId", relationshipType.getID());
|
query.setParameter("type", relationshipType);
|
||||||
query.setParameter("focusUUID", focusUUID);
|
query.setParameter("focusUUID", focusUUID);
|
||||||
query.setParameter("list", items);
|
query.setParameter("list", items);
|
||||||
return count(query);
|
return count(query);
|
||||||
|
@@ -84,9 +84,9 @@ public class VersionDAOImpl extends AbstractHibernateDAO<Version> implements Ver
|
|||||||
@Override
|
@Override
|
||||||
public int countVersionsByHistoryWithItem(Context context, VersionHistory versionHistory) throws SQLException {
|
public int countVersionsByHistoryWithItem(Context context, VersionHistory versionHistory) throws SQLException {
|
||||||
Query query = createQuery(context, "SELECT count(*) FROM " + Version.class.getSimpleName()
|
Query query = createQuery(context, "SELECT count(*) FROM " + Version.class.getSimpleName()
|
||||||
+ " WHERE versionhistory_id = (:versionhistoryId)"
|
+ " WHERE versionHistory = :versionhistory"
|
||||||
+ " AND item_id IS NOT NULL");
|
+ " AND item IS NOT NULL");
|
||||||
query.setParameter("versionhistoryId", versionHistory);
|
query.setParameter("versionhistory", versionHistory);
|
||||||
return count(query);
|
return count(query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user