Interface RqueueMessageManager

  • All Known Implementing Classes:
    RqueueMessageManagerImpl

    public interface RqueueMessageManager
    Rqueue Message Manager manages messages related to a queue.

    One or more messages can be deleted from a queue, not only this we can delete entire queue, that will delete messages related to a queue.

    We can also check whether the given message is enqueued or not.

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      boolean deleteAllMessages​(java.lang.String queueName)
      Very dangerous method it will delete all messages in a queue
      default boolean deleteAllMessages​(java.lang.String queueName, java.lang.String priority)
      Delete all message for the given that has some priority like high,medium and low
      boolean deleteMessage​(java.lang.String queueName, java.lang.String messageId)
      Delete a message that's enqueued to the given queue
      default boolean deleteMessage​(java.lang.String queueName, java.lang.String priority, java.lang.String messageId)
      Delete a message that's enqueued to a queue with some priority
      boolean exist​(java.lang.String queueName, java.lang.String id)
      Extension to method getMessage(String, String), instead of providing message it returns true/false.
      default boolean exist​(java.lang.String queueName, java.lang.String priority, java.lang.String id)
      Extension to the method exist(String, String), that checks message for priority queue.
      java.util.List<java.lang.Object> getAllMessages​(java.lang.String queueName)
      Find all messages stored on a given queue, it considers three types of messages
      default java.util.List<java.lang.Object> getAllMessages​(java.lang.String queueName, java.lang.String priority)
      Find all messages stored on a given queue with given priority, this method is extension to the method getAllMessages(String)
      java.util.List<RqueueMessage> getAllRqueueMessage​(java.lang.String queueName)
      Extension to the method getAllMessages(String) this returns internal message.
      default java.util.List<RqueueMessage> getAllRqueueMessage​(java.lang.String queueName, java.lang.String priority)
      Extension to the method getAllRqueueMessage(String)
      java.lang.Object getMessage​(java.lang.String queueName, java.lang.String id)
      Find the enqueued message, messages are deleted automatically post consumption, post consumption message has a fixed lifetime.
      default java.lang.Object getMessage​(java.lang.String queueName, java.lang.String priority, java.lang.String id)
      Extension to the method getMessage(String, String), this provides the message for the priority queue.
      org.springframework.messaging.converter.MessageConverter getMessageConverter()
      Get currently used message converter
      RqueueMessage getRqueueMessage​(java.lang.String queueName, java.lang.String id)
      Extension to the method getMessage(String, String), this returns internal message.
      default RqueueMessage getRqueueMessage​(java.lang.String queueName, java.lang.String priority, java.lang.String id)
      Extension to the method getRqueueMessage(String, String)
    • Method Detail

      • deleteAllMessages

        boolean deleteAllMessages​(java.lang.String queueName)
        Very dangerous method it will delete all messages in a queue
        Parameters:
        queueName - queue name
        Returns:
        fail/success
      • deleteAllMessages

        default boolean deleteAllMessages​(java.lang.String queueName,
                                          java.lang.String priority)
        Delete all message for the given that has some priority like high,medium and low
        Parameters:
        queueName - queue name
        priority - the priority for the queue
        Returns:
        fail/success
      • getAllMessages

        java.util.List<java.lang.Object> getAllMessages​(java.lang.String queueName)
        Find all messages stored on a given queue, it considers three types of messages

        1. In-Progress/In-Flight messages 2. Scheduled messages 3. Waiting for execution

        Parameters:
        queueName - queue name to be query for
        Returns:
        list of messages
      • getAllMessages

        default java.util.List<java.lang.Object> getAllMessages​(java.lang.String queueName,
                                                                java.lang.String priority)
        Find all messages stored on a given queue with given priority, this method is extension to the method getAllMessages(String)
        Parameters:
        queueName - queue name to be query for
        priority - the priority of the queue
        Returns:
        list of enqueued messages.
      • getMessage

        java.lang.Object getMessage​(java.lang.String queueName,
                                    java.lang.String id)
        Find the enqueued message, messages are deleted automatically post consumption, post consumption message has a fixed lifetime.
        Parameters:
        queueName - queue name on which message was enqueued
        id - message id
        Returns:
        the enqueued message, it could be null if message is not found or it's deleted.
        See Also:
        RqueueConfig
      • getMessage

        default java.lang.Object getMessage​(java.lang.String queueName,
                                            java.lang.String priority,
                                            java.lang.String id)
        Extension to the method getMessage(String, String), this provides the message for the priority queue.
        Parameters:
        queueName - queue name on which message was enqueued
        priority - the priority of the queue
        id - message id
        Returns:
        the enqueued message, it could be null if message is not found or it's deleted.
      • exist

        boolean exist​(java.lang.String queueName,
                      java.lang.String id)
        Extension to method getMessage(String, String), instead of providing message it returns true/false.
        Parameters:
        queueName - queue name on which message was enqueued
        id - message id
        Returns:
        whether the message exist or not
      • exist

        default boolean exist​(java.lang.String queueName,
                              java.lang.String priority,
                              java.lang.String id)
        Extension to the method exist(String, String), that checks message for priority queue.
        Parameters:
        queueName - queue name on which message was enqueued
        priority - priority of the given queue
        id - message id
        Returns:
        whether the message exist or not
      • getRqueueMessage

        RqueueMessage getRqueueMessage​(java.lang.String queueName,
                                       java.lang.String id)
        Extension to the method getMessage(String, String), this returns internal message.
        Parameters:
        queueName - queue name on which message was enqueued
        id - message id
        Returns:
        the enqueued message
      • getRqueueMessage

        default RqueueMessage getRqueueMessage​(java.lang.String queueName,
                                               java.lang.String priority,
                                               java.lang.String id)
        Extension to the method getRqueueMessage(String, String)
        Parameters:
        queueName - queue name on which message was enqueued
        priority - the priority of the queue
        id - message id
        Returns:
        the enqueued message
      • getAllRqueueMessage

        java.util.List<RqueueMessage> getAllRqueueMessage​(java.lang.String queueName)
        Extension to the method getAllMessages(String) this returns internal message.
        Parameters:
        queueName - queue name on which message was enqueued
        Returns:
        the enqueued message
      • getAllRqueueMessage

        default java.util.List<RqueueMessage> getAllRqueueMessage​(java.lang.String queueName,
                                                                  java.lang.String priority)
        Extension to the method getAllRqueueMessage(String)
        Parameters:
        queueName - queue name on which message was enqueued
        priority - the priority of the queue
        Returns:
        the enqueued message
      • deleteMessage

        boolean deleteMessage​(java.lang.String queueName,
                              java.lang.String messageId)
        Delete a message that's enqueued to the given queue
        Parameters:
        queueName - queue on which message was enqueued
        messageId - message id
        Returns:
        success/failure
      • deleteMessage

        default boolean deleteMessage​(java.lang.String queueName,
                                      java.lang.String priority,
                                      java.lang.String messageId)
        Delete a message that's enqueued to a queue with some priority
        Parameters:
        queueName - queue on which message was enqueued
        priority - priority of the message like high/low/medium
        messageId - messageId corresponding to this message
        Returns:
        success/failure
      • getMessageConverter

        org.springframework.messaging.converter.MessageConverter getMessageConverter()
        Get currently used message converter
        Returns:
        message converter that's used for message (de)serialization