public class ConversationStatusEntityManagerImpl extends AbstractEngineEntityManager<EngageEngineConfiguration,ConversationStatusEntity,ConversationStatusDataManager> implements ConversationStatusEntityManager
engineConfiguration
dataManager, engineType
Constructor and Description |
---|
ConversationStatusEntityManagerImpl(EngageEngineConfiguration configuration,
ConversationStatusDataManager conversationStatusDataManager) |
getClock, getCommandExecutor, getEngineConfiguration, getEventDispatcher
create, createEntityEvent, delete, delete, delete, findById, fireEntityDeletedEvent, fireEntityInsertedEvent, fireEntityUpdatedEvent, getDataManager, insert, insert, setDataManager, update, update
public ConversationStatusEntityManagerImpl(EngageEngineConfiguration configuration, ConversationStatusDataManager conversationStatusDataManager)
public List<ConversationStatusEntity> createStatusEntriesForNewConversation(ConversationEntity conversationEntity)
createStatusEntriesForNewConversation
in interface ConversationStatusEntityManager
protected List<String> extractParticipantUserIds(List<IdentityLinkEntity> identityLinks)
public List<ConversationStatusEntity> createStatusEntryForConversationParticipant(ConversationEntity conversationEntity, String userId)
createStatusEntryForConversationParticipant
in interface ConversationStatusEntityManager
protected List<ConversationFilterResponse> findUserConversationFilters(ConversationEntity conversationEntity, String userId)
public List<ConversationStatusEntity> findByConversation(String conversationId)
findByConversation
in interface ConversationStatusEntityManager
public ConversationStatusEntity findByUserAndConversationAndFilter(String userId, String conversationId, String filterId)
findByUserAndConversationAndFilter
in interface ConversationStatusEntityManager
public List<ConversationStatusEntity> findByUserAndConversation(String userId, String conversationId)
findByUserAndConversation
in interface ConversationStatusEntityManager
public long unreadCountByUserAndConversationAndNoFilter(String userId, String conversationId)
unreadCountByUserAndConversationAndNoFilter
in interface ConversationStatusEntityManager
public long unreadCountByUserAndNoFilter(String userId)
unreadCountByUserAndNoFilter
in interface ConversationStatusEntityManager
public Map<String,Long> unreadCountsByUserAndFilterAndConversations(String userId, String filterId, Collection<String> conversationIds)
unreadCountsByUserAndFilterAndConversations
in interface ConversationStatusEntityManager
public Map<String,Long> unreadCountByUserAndFilters(String userId, List<String> filterIds)
unreadCountByUserAndFilters
in interface ConversationStatusEntityManager
public Map<String,Long> unreadCountPerConversationByUserAndNoFilterAndOnlyUnread(String userId)
unreadCountPerConversationByUserAndNoFilterAndOnlyUnread
in interface ConversationStatusEntityManager
public int markConversationAsRead(String userId, String conversationId)
markConversationAsRead
in interface ConversationStatusEntityManager
public int resetConversationStatusesToEverythingRead(String conversationId)
resetConversationStatusesToEverythingRead
in interface ConversationStatusEntityManager
public int markMessageReceived(String userId, MessageEntity messageEntity)
markMessageReceived
in interface ConversationStatusEntityManager
public int increaseUnreadMessageCountsForConversation(ConversationEntity conversationEntity, MessageEntity messageEntity)
increaseUnreadMessageCountsForConversation
in interface ConversationStatusEntityManager
public void deleteByConversationId(String conversationId)
deleteByConversationId
in interface ConversationStatusEntityManager
public ConversationStatusQuery createConversationStatusQuery()
createConversationStatusQuery
in interface ConversationStatusEntityManager
public List<ConversationStatus> findByCriteria(ConversationStatusQuery query)
findByCriteria
in interface ConversationStatusEntityManager
public long countByCriteria(ConversationStatusQuery query)
countByCriteria
in interface ConversationStatusEntityManager