Interface QueueControl


public interface QueueControl
A QueueControl is used to manage a queue.
  • Field Details

  • Method Details

    • getName

      String getName()
      Returns the name of this queue.
      Returns:
      the name of this queue
    • getAddress

      String getAddress()
      Returns the address this queue is bound to.
      Returns:
      the address this queue is bound to
    • getID

      long getID()
      Returns this queue ID.
      Returns:
      this queue ID
    • isTemporary

      boolean isTemporary()
      Returns whether this queue is temporary.
      Returns:
      whether this queue is temporary
    • isRetroactiveResource

      boolean isRetroactiveResource()
      Returns whether this queue is used for a retroactive address.
      Returns:
      whether this queue is used for a retroactive address
    • isDurable

      boolean isDurable()
      Returns whether this queue is durable.
      Returns:
      whether this queue is durable
    • getUser

      String getUser()
      Returns the user that is associated with creating the queue.
      Returns:
      the user that is associated with creating the queue
    • getRoutingType

      String getRoutingType()
      The routing type of this queue.
    • getFilter

      String getFilter()
      Returns the filter associated with this queue.
      Returns:
      the filter associated with this queue
    • getMessageCount

      long getMessageCount()
      Returns the number of messages currently in this queue.
      Returns:
      the number of messages currently in this queue
    • getPersistentSize

      long getPersistentSize()
      Returns the persistent size of all messages currently in this queue; the persistent size of a message is the amount of space the message would take up on disk which is used to track how much data there is to consume on this queue.
      Returns:
      the persistent size of all messages currently in this queue; the persistent size of a message is the amount of space the message would take up on disk which is used to track how much data there is to consume on this queue
    • getDurableMessageCount

      long getDurableMessageCount()
      Returns the number of durable messages currently in this queue.
      Returns:
      the number of durable messages currently in this queue
    • getDurablePersistentSize

      long getDurablePersistentSize()
      Returns the persistent size of durable messages currently in this queue; the persistent size of a message is the amount of space the message would take up on disk which is used to track how much data there is to consume on this queue.
      Returns:
      the persistent size of durable messages currently in this queue; the persistent size of a message is the amount of space the message would take up on disk which is used to track how much data there is to consume on this queue
    • isInternalQueue

      boolean isInternalQueue()
      Returns whether this queue was created for the broker's internal use.
      Returns:
      whether this queue was created for the broker's internal use
    • getScheduledCount

      long getScheduledCount()
      Returns the number of scheduled messages in this queue.
      Returns:
      the number of scheduled messages in this queue
    • getScheduledSize

      long getScheduledSize()
      Returns the size of scheduled messages in this queue.
      Returns:
      the size of scheduled messages in this queue
    • getDurableScheduledCount

      long getDurableScheduledCount()
      Returns the number of durable scheduled messages in this queue.
      Returns:
      the number of durable scheduled messages in this queue
    • getDurableScheduledSize

      long getDurableScheduledSize()
      Returns the size of durable scheduled messages in this queue.
      Returns:
      the size of durable scheduled messages in this queue
    • getConsumerCount

      int getConsumerCount()
      Returns the number of consumers consuming messages from this queue.
      Returns:
      the number of consumers consuming messages from this queue
    • getDeliveringCount

      int getDeliveringCount()
      Returns the number of messages that this queue is currently delivering to its consumers.
      Returns:
      the number of messages that this queue is currently delivering to its consumers
    • getDeliveringSize

      long getDeliveringSize()
      Returns the persistent size of messages that this queue is currently delivering to its consumers.
      Returns:
      the persistent size of messages that this queue is currently delivering to its consumers
    • getDurableDeliveringCount

      int getDurableDeliveringCount()
      Returns the number of durable messages that this queue is currently delivering to its consumers.
      Returns:
      the number of durable messages that this queue is currently delivering to its consumers
    • getDurableDeliveringSize

      long getDurableDeliveringSize()
      Returns the size of durable messages that this queue is currently delivering to its consumers.
      Returns:
      the size of durable messages that this queue is currently delivering to its consumers
    • getMessagesAdded

      long getMessagesAdded()
      Returns the number of messages added to this queue since it was created.
      Returns:
      the number of messages added to this queue since it was created
    • getMessagesAcknowledged

      long getMessagesAcknowledged()
      Returns the number of messages added to this queue since it was created.
      Returns:
      the number of messages added to this queue since it was created
    • getAcknowledgeAttempts

      long getAcknowledgeAttempts()
      Returns the number of messages added to this queue since it was created.
      Returns:
      the number of messages added to this queue since it was created
    • getMessagesExpired

      long getMessagesExpired()
      Returns the number of messages expired from this queue since it was created.
      Returns:
      the number of messages expired from this queue since it was created
    • getMessagesKilled

      long getMessagesKilled()
      Returns the number of messages removed from this queue since it was created due to exceeding the max delivery attempts.
      Returns:
      the number of messages removed from this queue since it was created due to exceeding the max delivery attempts
    • getFirstMessageAsJSON

      String getFirstMessageAsJSON() throws Exception
      Returns the first message on the queue as JSON.
      Returns:
      the first message on the queue as JSON
      Throws:
      Exception
    • getFirstMessageTimestamp

      Long getFirstMessageTimestamp() throws Exception
      Returns the timestamp of the first message in milliseconds.
      Returns:
      the timestamp of the first message in milliseconds
      Throws:
      Exception
    • getFirstMessageAge

      Long getFirstMessageAge() throws Exception
      Returns the age of the first message in milliseconds.
      Returns:
      the age of the first message in milliseconds
      Throws:
      Exception
    • getExpiryAddress

      String getExpiryAddress()
      Returns the expiry address associated with this queue.
      Returns:
      the expiry address associated with this queue
    • getDeadLetterAddress

      String getDeadLetterAddress()
      Returns the dead-letter address associated with this queue.
      Returns:
      the dead-letter address associated with this queue
    • getMaxConsumers

      int getMaxConsumers()
    • isPurgeOnNoConsumers

      boolean isPurgeOnNoConsumers()
    • isEnabled

      boolean isEnabled()
    • enable

      void enable() throws Exception
      Enables the queue. Messages are now routed to this queue.
      Throws:
      Exception
    • disable

      void disable() throws Exception
      Enables the queue. Messages are not routed to this queue.
      Throws:
      Exception
    • isConfigurationManaged

      boolean isConfigurationManaged()
    • isExclusive

      boolean isExclusive()
    • isLastValue

      boolean isLastValue()
    • getLastValueKey

      String getLastValueKey()
      Returns key used for the last value queues.
      Returns:
      key used for the last value queues
    • getConsumersBeforeDispatch

      int getConsumersBeforeDispatch()
      Returns the Consumers Before Dispatch.
      Returns:
      the Consumers Before Dispatch
    • getDelayBeforeDispatch

      long getDelayBeforeDispatch()
      Returns the Delay Before Dispatch.
      Returns:
      the Delay Before Dispatch
    • listScheduledMessages

      Map<String,Object>[] listScheduledMessages() throws Exception
      Lists all the messages scheduled for delivery for this queue.

      1 Map represents 1 message, keys are the message's properties and headers, values are the corresponding values.

      Throws:
      Exception
    • listScheduledMessagesAsJSON

      String listScheduledMessagesAsJSON() throws Exception
      Lists all the messages scheduled for delivery for this queue using JSON serialization.
      Throws:
      Exception
    • listDeliveringMessages

      Map<String,Map<String,Object>[]> listDeliveringMessages() throws Exception
      Lists all the messages being deliver per consumer.

      The Map's key is a toString representation for the consumer. Each consumer will then return a Map<String,Object>[] same way is returned by listScheduledMessages()

      Throws:
      Exception
    • listDeliveringMessagesAsJSON

      String listDeliveringMessagesAsJSON() throws Exception
      Executes a conversion of listDeliveringMessages() to JSON
      Throws:
      Exception
    • listMessages

      Map<String,Object>[] listMessages(String filter) throws Exception
      Lists all the messages in this queue matching the specified filter.

      1 Map represents 1 message, keys are the message's properties and headers, values are the corresponding values.

      Using null or an empty filter will list all messages from this queue.

      Throws:
      Exception
    • listMessagesAsJSON

      String listMessagesAsJSON(String filter) throws Exception
      Lists all the messages in this queue matching the specified filter using JSON serialization.

      Using null or an empty filter will list all messages from this queue.

      Throws:
      Exception
    • countMessages

      long countMessages(String filter) throws Exception
      Counts the number of messages in this queue matching the specified filter.

      Using null or an empty filter will count all messages from this queue.

      Throws:
      Exception
    • countMessages

      long countMessages() throws Exception
      Throws:
      Exception
    • countMessages

      String countMessages(String filter, String groupByProperty) throws Exception
      Counts the number of messages in this queue matching the specified filter, grouped by the given property field. In case of null property will be grouped in "null"

      Using null or an empty filter will count all messages from this queue.

      Throws:
      Exception
    • countDeliveringMessages

      long countDeliveringMessages(String filter) throws Exception
      Counts the number of delivering messages in this queue matching the specified filter.

      Using null or an empty filter will count all messages from this queue.

      Throws:
      Exception
    • countDeliveringMessages

      String countDeliveringMessages(String filter, String groupByProperty) throws Exception
      Counts the number of delivering messages in this queue matching the specified filter, grouped by the given property field. In case of null property will be grouped in "null"

      Using null or an empty filter will count all messages from this queue.

      Throws:
      Exception
    • removeMessage

      boolean removeMessage(long messageID) throws Exception
      Removes the message corresponding to the specified message ID.
      Returns:
      true if the message was removed, false else
      Throws:
      Exception
    • removeMessages

      int removeMessages(String filter) throws Exception
      Removes all the message corresponding to the specified filter.

      Using null or an empty filter will remove all messages from this queue.

      Returns:
      the number of removed messages
      Throws:
      Exception
    • removeMessages

      int removeMessages(int flushLimit, String filter) throws Exception
      Removes all the message corresponding to the specified filter.

      Using null or an empty filter will remove all messages from this queue.

      Returns:
      the number of removed messages
      Throws:
      Exception
    • removeAllMessages

      int removeAllMessages() throws Exception
      Removes all the message from the queue.
      Returns:
      the number of removed messages
      Throws:
      Exception
    • expireMessages

      int expireMessages(String filter) throws Exception
      Expires all the message corresponding to the specified filter.

      Using null or an empty filter will expire all messages from this queue.

      Returns:
      the number of expired messages
      Throws:
      Exception
    • expireMessage

      boolean expireMessage(long messageID) throws Exception
      Expires the message corresponding to the specified message ID.
      Returns:
      true if the message was expired, false else
      Throws:
      Exception
    • retryMessage

      boolean retryMessage(long messageID) throws Exception
      Retries the message corresponding to the given messageID to the original queue. This is appropriate on dead messages on Dead letter queues only.
      Returns:
      true if the message was retried, false else
      Throws:
      Exception
    • retryMessages

      int retryMessages() throws Exception
      Retries all messages on a DLQ to their respective original queues. This is appropriate on dead messages on Dead letter queues only.
      Returns:
      the number of retried messages
      Throws:
      Exception
    • moveMessage

      boolean moveMessage(long messageID, String otherQueueName) throws Exception
      Moves the message corresponding to the specified message ID to the specified other queue.
      Returns:
      true if the message was moved, false else
      Throws:
      Exception
    • moveMessage

      boolean moveMessage(long messageID, String otherQueueName, boolean rejectDuplicates) throws Exception
      Moves the message corresponding to the specified message ID to the specified other queue.
      Returns:
      true if the message was moved, false else
      Throws:
      Exception
    • moveMessages

      int moveMessages(String filter, String otherQueueName) throws Exception
      Moves all the message corresponding to the specified filter to the specified other queue. RejectDuplicates = false on this case

      Using null or an empty filter will move all messages from this queue.

      Returns:
      the number of moved messages
      Throws:
      Exception
    • moveMessages

      int moveMessages(String filter, String otherQueueName, boolean rejectDuplicates) throws Exception
      Moves all the message corresponding to the specified filter to the specified other queue.

      Using null or an empty filter will move all messages from this queue.

      Returns:
      the number of moved messages
      Throws:
      Exception
    • moveMessages

      int moveMessages(int flushLimit, String filter, String otherQueueName, boolean rejectDuplicates) throws Exception
      Throws:
      Exception
    • moveMessages

      int moveMessages(int flushLimit, String filter, String otherQueueName, boolean rejectDuplicates, int messageCount) throws Exception
      Throws:
      Exception
    • copyMessage

      boolean copyMessage(long messageID, String targetQueue) throws Exception
      Throws:
      Exception
    • sendMessageToDeadLetterAddress

      boolean sendMessageToDeadLetterAddress(long messageID) throws Exception
      Sends the message corresponding to the specified message ID to this queue's dead letter address.
      Returns:
      true if the message was sent to the dead letter address, false else
      Throws:
      Exception
    • sendMessagesToDeadLetterAddress

      int sendMessagesToDeadLetterAddress(String filterStr) throws Exception
      Sends all the message corresponding to the specified filter to this queue's dead letter address.

      Using null or an empty filter will send all messages from this queue.

      Returns:
      the number of sent messages
      Throws:
      Exception
    • sendMessage

      String sendMessage(Map<String,String> headers, int type, String body, boolean durable, String user, String password) throws Exception
      Sends a TextMessage to a password-protected destination.
      Parameters:
      headers - the message headers and properties to set. Can only container Strings maped to primitive types.
      body - the text to send
      Throws:
      Exception
    • sendMessage

      String sendMessage(Map<String,String> headers, int type, String body, boolean durable, String user, String password, boolean createMessageId) throws Exception
      Sends a TextMessage to a password-protected destination.
      Parameters:
      headers - the message headers and properties to set. Can only container Strings maped to primitive types.
      body - the text to send
      createMessageId - whether to auto generate a Message ID
      Throws:
      Exception
    • changeMessagePriority

      boolean changeMessagePriority(long messageID, int newPriority) throws Exception
      Changes the message's priority corresponding to the specified message ID to the specified priority.
      Parameters:
      newPriority - between 0 and 9 inclusive.
      Returns:
      true if the message priority was changed
      Throws:
      Exception
    • changeMessagesPriority

      int changeMessagesPriority(String filter, int newPriority) throws Exception
      Changes the priority for all the message corresponding to the specified filter to the specified priority.

      Using null or an empty filter will change all messages from this queue.

      Returns:
      the number of changed messages
      Throws:
      Exception
    • listMessageCounter

      String listMessageCounter() throws Exception
      Lists the message counter for this queue.
      Throws:
      Exception
    • resetMessageCounter

      void resetMessageCounter() throws Exception
      Resets the message counter for this queue.
      Throws:
      Exception
    • listMessageCounterAsHTML

      String listMessageCounterAsHTML() throws Exception
      Lists the message counter for this queue as a HTML table.
      Throws:
      Exception
    • listMessageCounterHistory

      String listMessageCounterHistory() throws Exception
      Lists the message counter history for this queue.
      Throws:
      Exception
    • listMessageCounterHistoryAsHTML

      @Deprecated String listMessageCounterHistoryAsHTML() throws Exception
      Deprecated.
      Lists the message counter history for this queue as a HTML table.
      Throws:
      Exception
    • pause

      void pause() throws Exception
      Pauses the queue. Messages are no longer delivered to its consumers.
      Throws:
      Exception
    • pause

      void pause(boolean persist) throws Exception
      Pauses the queue. Messages are no longer delivered to its consumers.
      Throws:
      Exception
    • resume

      void resume() throws Exception
      Resumes the queue. Messages are again delivered to its consumers.
      Throws:
      Exception
    • listConsumersAsJSON

      String listConsumersAsJSON() throws Exception
      Throws:
      Exception
    • isPaused

      boolean isPaused()
      Returns whether the queue is paused.
      Returns:
      whether the queue is paused
    • isPersistedPause

      boolean isPersistedPause()
      Returns whether the queue's paused status is persisted.
      Returns:
      whether the queue's paused status is persisted
    • browse

      CompositeData[] browse() throws Exception
      Throws:
      Exception
    • browse

      CompositeData[] browse(String filter) throws Exception
      Throws:
      Exception
    • browse

      CompositeData[] browse(int page, int pageSize) throws Exception
      Throws:
      Exception
    • browse

      CompositeData[] browse(int page, int pageSize, String filter) throws Exception
      Throws:
      Exception
    • resetMessagesAdded

      void resetMessagesAdded() throws Exception
      Resets the MessagesAdded property
      Throws:
      Exception
    • resetMessagesAcknowledged

      void resetMessagesAcknowledged() throws Exception
      Resets the MessagesAdded property
      Throws:
      Exception
    • resetMessagesExpired

      void resetMessagesExpired() throws Exception
      Resets the MessagesExpired property
      Throws:
      Exception
    • resetMessagesKilled

      void resetMessagesKilled() throws Exception
      Resets the MessagesExpired property
      Throws:
      Exception
    • flushExecutor

      void flushExecutor()
      it will flush one cycle on internal executors, so you would be sure that any pending tasks are done before you call any other measure. It is useful if you need the exact number of counts on a message
    • resetAllGroups

      void resetAllGroups()
      Will reset the all the groups. This is useful if you want a complete rebalance of the groups to consumers
    • resetGroup

      void resetGroup(String groupID)
      Will reset the group matching the given groupID. This is useful if you want the given group to be rebalanced to the consumers
    • getGroupCount

      int getGroupCount()
      Will return the current number of active groups.
    • listGroupsAsJSON

      String listGroupsAsJSON() throws Exception
      Throws:
      Exception
    • getRingSize

      long getRingSize()
      Will return the ring size.
    • isGroupRebalance

      boolean isGroupRebalance()
      Returns whether the groups of this queue are automatically rebalanced.
      Returns:
      whether the groups of this queue are automatically rebalanced
    • isGroupRebalancePauseDispatch

      boolean isGroupRebalancePauseDispatch()
      Returns whether the dispatch is paused when groups of this queue are automatically rebalanced.
      Returns:
      whether the dispatch is paused when groups of this queue are automatically rebalanced
    • getGroupBuckets

      int getGroupBuckets()
      Will return the group buckets.
    • getGroupFirstKey

      String getGroupFirstKey()
      Will return the header key to notify a consumer of a group change.
    • getPreparedTransactionMessageCount

      int getPreparedTransactionMessageCount()
      Will return the number of messages stuck in prepared transactions
    • deliverScheduledMessages

      void deliverScheduledMessages(String filter) throws Exception
      Deliver the scheduled messages which match the filter
      Throws:
      Exception
    • deliverScheduledMessage

      void deliverScheduledMessage(long messageId) throws Exception
      Deliver the scheduled message with the specified message ID
      Throws:
      Exception
    • isAutoDelete

      boolean isAutoDelete()
      Returns whether this queue is available for auto deletion.
      Returns:
      whether this queue is available for auto deletion
    • peekFirstMessageAsJSON

      String peekFirstMessageAsJSON() throws Exception
      Returns the first message on the queue as JSON.
      Returns:
      the first message on the queue as JSON
      Throws:
      Exception
    • peekFirstScheduledMessageAsJSON

      String peekFirstScheduledMessageAsJSON() throws Exception
      Returns the first scheduled message on the queue as JSON.
      Returns:
      the first scheduled message on the queue as JSON
      Throws:
      Exception