Interface MessageRepository

  • All Implemented Interfaces:

    
    public interface MessageRepository
    
                        

    Repository to read and write Message data.

    • Constructor Detail

    • Method Detail

      • selectMessagesForThread

         abstract List<Message> selectMessagesForThread(String messageId, Integer limit)

        Select messages for a thread in a desired page.

        Parameters:
        messageId - String.
        limit - limit of messages
      • selectMessages

         abstract List<Message> selectMessages(List<String> messageIds)

        Selects messages by IDs.

        Parameters:
        messageIds - A list of Message.id as query specification.
        Returns:

        A list of messages found in repository.

      • selectMessage

         abstract Message selectMessage(String messageId)

        Reads the message with passed ID.

        Parameters:
        messageId - String.
      • selectMessagesWithPoll

         abstract List<Message> selectMessagesWithPoll(String pollId)

        Selects all messages with a poll with the passed ID.

        Parameters:
        pollId - The ID of the poll.
        Returns:

        A list of messages with the poll.

      • insertMessages

         abstract Unit insertMessages(List<Message> messages)

        Inserts many messages.

        Parameters:
        messages - list of Message
      • insertMessage

         abstract Unit insertMessage(Message message)

        Inserts a messages.

        Parameters:
        message - Message
      • deleteChannelMessagesBefore

         abstract Unit deleteChannelMessagesBefore(String cid, Date hideMessagesBefore)

        Deletes all messages before a message with passed ID.

        Parameters:
        cid - of message - String.
        hideMessagesBefore - Boolean.
      • deleteChannelMessage

         abstract Unit deleteChannelMessage(Message message)

        Deletes message.

        Parameters:
        message - Message
      • selectMessageBySyncState

         abstract List<Message> selectMessageBySyncState(SyncStatus syncStatus)

        Selects all message of a SyncStatus

        Parameters:
        syncStatus - SyncStatus
      • insertDraftMessage

         abstract Unit insertDraftMessage(DraftMessage message)

        Insert a draft message.

        Parameters:
        message - DraftMessage to be inserted.
      • evictMessage

         abstract Unit evictMessage(String messageId)

        Evicts a message from the repository.

        Parameters:
        messageId - String.
      • deletePoll

         abstract Unit deletePoll(String pollId)

        Deletes a Poll by its ID.

        Parameters:
        pollId - The ID of the Poll to delete.
      • clear

         abstract Unit clear()

        Clear messages of this repository.