Class DestinationBasedMessageList

  • All Implemented Interfaces:
    MessageList

    public class DestinationBasedMessageList
    extends Object
    implements MessageList
    An implementation of MessageList which maintains a separate message list for each destination to reduce contention on the list and to speed up recovery times by only recovering the interested topics.
    • Constructor Detail

      • DestinationBasedMessageList

        public DestinationBasedMessageList​(int maximumSize)
      • DestinationBasedMessageList

        public DestinationBasedMessageList​(MessageBuffer buffer)
    • Method Detail

      • add

        public void add​(org.apache.activemq.broker.region.MessageReference node)
        Specified by:
        add in interface MessageList
      • getMessages

        public List<org.apache.activemq.broker.region.MessageReference> getMessages​(Subscription sub)
      • getMessages

        public List<org.apache.activemq.broker.region.MessageReference> getMessages​(org.apache.activemq.command.ActiveMQDestination destination)
        Description copied from interface: MessageList
        Returns the current list of MessageReference objects for the given subscription
        Specified by:
        getMessages in interface MessageList
      • browse

        public org.apache.activemq.command.Message[] browse​(org.apache.activemq.command.ActiveMQDestination destination)
        Specified by:
        browse in interface MessageList
        Returns:
        an array of Messages that match the destination