Interface ChannelMessageStoreQueryProvider

All Known Implementing Classes:
AbstractChannelMessageStoreQueryProvider, DerbyChannelMessageStoreQueryProvider, H2ChannelMessageStoreQueryProvider, HsqlChannelMessageStoreQueryProvider, MySqlChannelMessageStoreQueryProvider, OracleChannelMessageStoreQueryProvider, PostgresChannelMessageStoreQueryProvider, SqlServerChannelMessageStoreQueryProvider

public interface ChannelMessageStoreQueryProvider
Common interface used in order to configure the JdbcChannelMessageStore to provide database-specific queries.
Since:
2.2
Author:
Gunnar Hillert, Artem Bilan, Gary Russell, Adama Sorho, Johannes Edmeier
  • Field Details

  • Method Details

    • getCountAllMessagesInGroupQuery

      default String getCountAllMessagesInGroupQuery()
      Get the query used to retrieve a count of all messages currently persisted for a channel.
      Returns:
      query string
    • getMessageQuery

      default String getMessageQuery()
      Query that retrieves a message for the provided message id, channel and region.
      Returns:
      query string
    • getMessageCountForRegionQuery

      default String getMessageCountForRegionQuery()
      Query that retrieve a count of all messages for a region.
      Returns:
      query string
    • getDeleteMessageQuery

      default String getDeleteMessageQuery()
      Query to delete a single message from the database.
      Returns:
      query string
    • getCreateMessageQuery

      default String getCreateMessageQuery()
      Query to add a single message to the database.
      Returns:
      query string
    • getDeleteMessageGroupQuery

      default String getDeleteMessageGroupQuery()
      Query to delete all messages that belong to a specific channel.
      Returns:
      query string
    • getPollFromGroupExcludeIdsQuery

      String getPollFromGroupExcludeIdsQuery()
      Get the query used to retrieve the oldest message for a channel excluding messages that match the provided message ids.
      Returns:
      query string
    • getPollFromGroupQuery

      String getPollFromGroupQuery()
      Get the query used to retrieve the oldest message for a channel.
      Returns:
      query string
    • getPriorityPollFromGroupExcludeIdsQuery

      String getPriorityPollFromGroupExcludeIdsQuery()
      Get the query used to retrieve the oldest message by priority for a channel excluding messages that match the provided message ids.
      Returns:
      query string
    • getPriorityPollFromGroupQuery

      String getPriorityPollFromGroupQuery()
      Get the query used to retrieve the oldest message by priority for a channel.
      Returns:
      query string
    • isSingleStatementForPoll

      default boolean isSingleStatementForPoll()
      Indicate if the queries for polling are using a single statement (e.g. DELETE ... RETURNING) to retrieve and delete the message from the channel store.
      Returns:
      true if a single statement is used, false if a select and delete is required.
      Since:
      6.2