Package de.xima.fc.dao.impl
Class FormRecordChatDao
- java.lang.Object
-
- de.xima.cmn.dao.AbstractDao<T,Long,IEntityContext>
-
- de.xima.fc.dao.impl.GenericDao<FormRecordChat>
-
- de.xima.fc.dao.impl.FormRecordChatDao
-
- All Implemented Interfaces:
de.xima.cmn.dao.interfaces.IAbstractDao<FormRecordChat,Long,IEntityContext>,IFormRecordChatDao,IGenericDao<FormRecordChat>
public class FormRecordChatDao extends GenericDao<FormRecordChat> implements IFormRecordChatDao
Implementation of theIFormRecordChatDaofor reading and writingFormRecordChatentities.- Since:
- 8.2.0
- Author:
- XIMA Media GmbH
-
-
Field Summary
Fields Modifier and Type Field Description static StringSKIP_UPDATE_PROTOCOL_ENTRY
-
Constructor Summary
Constructors Constructor Description FormRecordChatDao()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanAccessViaPublicApi(IEntityContext ec, FormRecordChat chat, IUser user)Returns whether the given user can access the given chat within a user portal.PagedResult<BaseFormRecordChatDTO>getByRecordAndUser(IEntityContext ec, UUID recordUuid, IUser user, int page, int pageSize, Locale locale)Finds the chats for the form record given by its UUID if the given user can access the chat.List<FormRecordChat>getByUser(IEntityContext ec, IUser user)Finds all form record chats the given userhas access to.PagedResult<FormRecordChat>getByUser(IEntityContext ec, IUser user, int page, int pageSize, int offset)Finds all form record chats the given user has access to.FormRecordChatgetByUuid(IEntityContext ec, UUID uuid)Finds the chat for the given UUID.FormRecordChatgetByUuidAndUser(IEntityContext ec, UUID uuid, IUser user)Finds the chat for the given UUID if the given user can access the chat.DetailedFormRecordChatDTOgetDetailsByUuidAndUser(IEntityContext ec, UUID uuid, IUser user, Locale locale)Finds the chat for the given UUID if the given user can access the chat.PagedResult<BaseFormRecordChatDTO>getFormRecordChatsPage(IEntityContext ec, PageQuery pageQuery, FormRecordChatsQuery query, boolean skipCount)protected IFCDaoActionHook<FormRecordChat>getPostActionHook()voidmarkReadByEndUser(IEntityContext ec, UUID chatUuid, IUser user)Marks the chat as read for the given end user.voidmarkReadByInboxUser(IEntityContext ec, UUID chatUuid, IUser user)Marks the chat as read for the given inbox user.-
Methods inherited from class de.xima.fc.dao.impl.GenericDao
getEntityRefs, getPreActionHook, read
-
Methods inherited from class de.xima.cmn.dao.AbstractDao
all, bulkDelete, bulkUpdate, cb, checkLockingVersion, cq, create, create, delete, delete, deleteAll, executePagedDaoAction, getAttributes, getAttributes, getSingleAttributes, getSingleAttributes, getTransactionHandler, notifyListener, notifyListener, read, registerListener, registerListener, registerListener, resultTotalCount, setTransactionHandler, singleElement, unregisterListener, unregisterListener, unregisterListener, update, update
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.xima.cmn.dao.interfaces.IAbstractDao
all, bulkDelete, bulkUpdate, checkLockingVersion, create, create, delete, delete, deleteAll, executePagedDaoAction, getAttributes, getAttributes, getSingleAttributes, getSingleAttributes, getTransactionHandler, read, registerListener, registerListener, registerListener, resultTotalCount, setTransactionHandler, singleElement, unregisterListener, unregisterListener, unregisterListener, update, update
-
Methods inherited from interface de.xima.fc.dao.interfaces.IGenericDao
count, findAll, findSingle, getEntityRefs, read
-
-
-
-
Field Detail
-
SKIP_UPDATE_PROTOCOL_ENTRY
public static final String SKIP_UPDATE_PROTOCOL_ENTRY
- See Also:
- Constant Field Values
-
-
Method Detail
-
canAccessViaPublicApi
public boolean canAccessViaPublicApi(IEntityContext ec, FormRecordChat chat, IUser user)
Description copied from interface:IFormRecordChatDaoReturns whether the given user can access the given chat within a user portal.- Specified by:
canAccessViaPublicApiin interfaceIFormRecordChatDao- Parameters:
ec- entity context for database transactions.chat- to check access within a user portal for.user- to check access within a user portal for.- Returns:
trueif the requesting user can access the given chat andfalseotherwise.
-
getByRecordAndUser
public PagedResult<BaseFormRecordChatDTO> getByRecordAndUser(IEntityContext ec, UUID recordUuid, IUser user, int page, int pageSize, Locale locale)
Description copied from interface:IFormRecordChatDaoFinds the chats for the form record given by its UUID if the given user can access the chat.- Specified by:
getByRecordAndUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the database.recordUuid- the UUID of the form recorduser- to get the form record chats for.page- to get.pageSize- size of the page to get.- Returns:
- a list of form record chats the user has access to ordered by their creation instant (desc).
nullif the form record given by the UUID could not be found.
-
getByUser
public List<FormRecordChat> getByUser(IEntityContext ec, IUser user)
Description copied from interface:IFormRecordChatDaoFinds all form record chats the given userhas access to.- Specified by:
getByUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for database transactions.user- to get the form record chats for.- Returns:
- a list of the user's form record chats ordered by their creation instant (desc).
- See Also:
FormRecordChat.isMember(IUser)
-
getByUser
public PagedResult<FormRecordChat> getByUser(IEntityContext ec, IUser user, int page, int pageSize, int offset)
Description copied from interface:IFormRecordChatDaoFinds all form record chats the given user has access to.- Specified by:
getByUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for database transactions.user- to get the form record chats for.page- to get. Identifies the page by page number. The first page number is 1.pageSize- size of the page to get.offset- The number of form record chats to skip before starting to collect the result. The offset starts at the beginning of the page given by the page number parameter.- Returns:
- a list of the user's form record chats ordered by their creation instant (desc).
- See Also:
IFormRecordChatDao.getByUser(IEntityContext, IUser)
-
getByUuid
public FormRecordChat getByUuid(IEntityContext ec, UUID uuid)
Description copied from interface:IFormRecordChatDaoFinds the chat for the given UUID.- Specified by:
getByUuidin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the databaseuuid- the UUID of the chat- Returns:
- The chat with the given UUID
-
getByUuidAndUser
public FormRecordChat getByUuidAndUser(IEntityContext ec, UUID uuid, IUser user)
Description copied from interface:IFormRecordChatDaoFinds the chat for the given UUID if the given user can access the chat.- Specified by:
getByUuidAndUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the database.uuid- the UUID of the chatuser- to get the form record chats for.- Returns:
- The chat with the given UUID if it exists and the user can access it.
nullotherwise. - See Also:
IFormRecordChatDao.getByUser(IEntityContext, IUser)
-
getDetailsByUuidAndUser
public DetailedFormRecordChatDTO getDetailsByUuidAndUser(IEntityContext ec, UUID uuid, IUser user, Locale locale)
Description copied from interface:IFormRecordChatDaoFinds the chat for the given UUID if the given user can access the chat.- Specified by:
getDetailsByUuidAndUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the database.uuid- the UUID of the chatuser- to get the form record chats for.locale- the locale to use for the DTO.- Returns:
- The chat with the given UUID if it exists and the user can access it.
nullotherwise. - See Also:
IFormRecordChatDao.getByUser(IEntityContext, IUser)
-
getFormRecordChatsPage
public PagedResult<BaseFormRecordChatDTO> getFormRecordChatsPage(IEntityContext ec, PageQuery pageQuery, FormRecordChatsQuery query, boolean skipCount)
- Specified by:
getFormRecordChatsPagein interfaceIFormRecordChatDao
-
markReadByEndUser
public void markReadByEndUser(IEntityContext ec, UUID chatUuid, IUser user)
Description copied from interface:IFormRecordChatDaoMarks the chat as read for the given end user.- Specified by:
markReadByEndUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the database.chatUuid- the UUID of the chat to mark as read.user- end user to mark the chat as read for.
-
markReadByInboxUser
public void markReadByInboxUser(IEntityContext ec, UUID chatUuid, IUser user)
Description copied from interface:IFormRecordChatDaoMarks the chat as read for the given inbox user.- Specified by:
markReadByInboxUserin interfaceIFormRecordChatDao- Parameters:
ec- entity context for accessing the database.chatUuid- the UUID of the chat to mark as read.user- inbox user to mark the chat as read for.
-
getPostActionHook
protected IFCDaoActionHook<FormRecordChat> getPostActionHook()
- Overrides:
getPostActionHookin classGenericDao<FormRecordChat>
-
-