Package org.dspace.app.ldn.dao.impl
Class LDNMessageDaoImpl
java.lang.Object
org.dspace.core.AbstractHibernateDAO<LDNMessageEntity>
org.dspace.app.ldn.dao.impl.LDNMessageDaoImpl
- All Implemented Interfaces:
LDNMessageDao,GenericDAO<LDNMessageEntity>
public class LDNMessageDaoImpl
extends AbstractHibernateDAO<LDNMessageEntity>
implements LDNMessageDao
Hibernate implementation of the Database Access Object interface class for
the LDNMessage object. This class is responsible for all database calls for
the LDNMessage object and is autowired by spring
- Author:
- Mohamed Eskander (mohamed.eskander at 4science.com)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfindAllMessagesByItem(Context context, Item item, String... activities) find all ldn messages related to an itemfindAllRelatedMessagesByItem(Context context, LDNMessageEntity msg, Item item, String... relatedTypes) find all ldn messages related to an item and to a specific ldn messagefindMessagesToBeReprocessed(Context context) findOldestMessageToProcess(Context context, int max_attempts) load the oldest ldn messages considering theirLDNMessageEntity.queueLastStartTimefindProcessingTimedoutMessages(Context context, int max_attempts) find ldn message entties in processing status and already timed out.Methods inherited from class org.dspace.core.AbstractHibernateDAO
count, count, countLong, create, createQuery, createQuery, delete, executeCriteriaQuery, findAll, findAll, findByID, findByID, findByID, findByX, findMany, findMany, findUnique, getCriteriaBuilder, getCriteriaQuery, getHibernateSession, iterate, list, list, list, list, save, singleResult, singleResult, uniqueResult, uniqueResult
-
Constructor Details
-
LDNMessageDaoImpl
public LDNMessageDaoImpl()
-
-
Method Details
-
findOldestMessageToProcess
public List<LDNMessageEntity> findOldestMessageToProcess(Context context, int max_attempts) throws SQLException Description copied from interface:LDNMessageDaoload the oldest ldn messages considering theirLDNMessageEntity.queueLastStartTime- Specified by:
findOldestMessageToProcessin interfaceLDNMessageDaomax_attempts- consider ldn_message entity with queue_attempts <= max_attempts- Returns:
- ldn message entities to be routed
- Throws:
SQLException
-
findMessagesToBeReprocessed
- Specified by:
findMessagesToBeReprocessedin interfaceLDNMessageDao- Returns:
- the list of messages in need to be reprocessed - with queue_status as QUEUE_STATUS_QUEUED_FOR_RETRY
- Throws:
SQLException
-
findProcessingTimedoutMessages
public List<LDNMessageEntity> findProcessingTimedoutMessages(Context context, int max_attempts) throws SQLException Description copied from interface:LDNMessageDaofind ldn message entties in processing status and already timed out.- Specified by:
findProcessingTimedoutMessagesin interfaceLDNMessageDaomax_attempts- consider ldn_message entity with queue_attempts <= max_attempts- Returns:
- ldn message entities
- Throws:
SQLException
-
findAllRelatedMessagesByItem
public List<LDNMessageEntity> findAllRelatedMessagesByItem(Context context, LDNMessageEntity msg, Item item, String... relatedTypes) throws SQLException Description copied from interface:LDNMessageDaofind all ldn messages related to an item and to a specific ldn message- Specified by:
findAllRelatedMessagesByItemin interfaceLDNMessageDaomsg- the referring ldn messageitem- the referring repository itemrelatedTypes- filter for @see org.dspace.app.ldn.LDNMessageEntity#activityStreamType- Returns:
- all related ldn messages
- Throws:
SQLException
-
findAllMessagesByItem
public List<LDNMessageEntity> findAllMessagesByItem(Context context, Item item, String... activities) throws SQLException Description copied from interface:LDNMessageDaofind all ldn messages related to an item- Specified by:
findAllMessagesByItemin interfaceLDNMessageDaoitem- item related to the returned ldn messagesactivities- involves only this specific group of activities- Returns:
- all ldn messages related to the given item
- Throws:
SQLException
-