Class RqueueMessageManagerImpl

    • Field Detail

      • messageHeaders

        protected final org.springframework.messaging.MessageHeaders messageHeaders
      • messageConverter

        protected org.springframework.messaging.converter.MessageConverter messageConverter
      • rqueueConfig

        @Autowired
        protected RqueueConfig rqueueConfig
    • Constructor Detail

      • RqueueMessageManagerImpl

        public RqueueMessageManagerImpl​(RqueueMessageTemplate messageTemplate,
                                        org.springframework.messaging.converter.MessageConverter messageConverter,
                                        org.springframework.messaging.MessageHeaders messageHeaders)
    • Method Detail

      • deleteAllMessages

        public boolean deleteAllMessages​(java.lang.String queueName)
        Description copied from interface: RqueueMessageManager
        Very dangerous method it will delete all messages in a queue
        Specified by:
        deleteAllMessages in interface RqueueMessageManager
        Parameters:
        queueName - queue name
        Returns:
        fail/success
      • getAllMessages

        public java.util.List<java.lang.Object> getAllMessages​(java.lang.String queueName)
        Description copied from interface: RqueueMessageManager
        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

        Specified by:
        getAllMessages in interface RqueueMessageManager
        Parameters:
        queueName - queue name to be query for
        Returns:
        list of messages
      • getMessage

        public java.lang.Object getMessage​(java.lang.String queueName,
                                           java.lang.String id)
        Description copied from interface: RqueueMessageManager
        Find the enqueued message, messages are deleted automatically post consumption, post consumption message has a fixed lifetime.
        Specified by:
        getMessage in interface RqueueMessageManager
        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
      • deleteMessage

        public boolean deleteMessage​(java.lang.String queueName,
                                     java.lang.String id)
        Description copied from interface: RqueueMessageManager
        Delete a message that's enqueued to the given queue
        Specified by:
        deleteMessage in interface RqueueMessageManager
        Parameters:
        queueName - queue on which message was enqueued
        id - message id
        Returns:
        success/failure
      • getMessageConverter

        public org.springframework.messaging.converter.MessageConverter getMessageConverter()
        Description copied from interface: RqueueMessageManager
        Get currently used message converter
        Specified by:
        getMessageConverter in interface RqueueMessageManager
        Returns:
        message converter that's used for message (de)serialization
      • storeMessageMetadata

        protected void storeMessageMetadata​(RqueueMessage rqueueMessage,
                                            java.lang.Long delayInMillis)
      • enqueue

        protected void enqueue​(QueueDetail queueDetail,
                               RqueueMessage rqueueMessage,
                               java.lang.Long delayInMilliSecs)
      • pushMessage

        protected java.lang.String pushMessage​(java.lang.String queueName,
                                               java.lang.String messageId,
                                               java.lang.Object message,
                                               java.lang.Integer retryCount,
                                               java.lang.Long delayInMilliSecs)
      • pushPeriodicMessage

        protected java.lang.String pushPeriodicMessage​(java.lang.String queueName,
                                                       java.lang.String messageId,
                                                       java.lang.Object message,
                                                       long periodInMilliSeconds)
      • deleteAllMessages

        protected java.lang.Object deleteAllMessages​(QueueDetail queueDetail)
      • registerQueueInternal

        protected void registerQueueInternal​(java.lang.String queueName,
                                             java.lang.String... priorities)