Interface DestinationTopicContainer

All Known Subinterfaces:
DestinationTopicResolver
All Known Implementing Classes:
DefaultDestinationTopicResolver

public interface DestinationTopicContainer
Provides methods to store and retrieve DestinationTopic instances.
Since:
2.7
Author:
Tomaz Fernandes, Gary Russell
  • Method Details

    • addDestinationTopics

      void addDestinationTopics(String mainListenerId, List<DestinationTopic> destinationTopics)
      Adds the provided destination topics to the container.
      Parameters:
      mainListenerId - the listener id.
      destinationTopics - the DestinationTopic list to add.
    • getDestinationTopicByName

      DestinationTopic getDestinationTopicByName(String mainListenerId, String topicName)
      Returns the DestinationTopic instance registered for that topic.
      Parameters:
      mainListenerId - the listener id.
      topicName - the topic name of the DestinationTopic to be returned.
      Returns:
      the DestinationTopic instance registered for that topic.
    • getNextDestinationTopicFor

      DestinationTopic getNextDestinationTopicFor(String mainListenerId, String topicName)
      Returns the DestinationTopic instance registered as the next destination topic in the chain for the given topic. Note that this might not correspond to the actual next topic a message will be forwarded to, since that depends on different factors. If you need to find out the exact next topic for a message use the DestinationTopicResolver.resolveDestinationTopic(String, String, Integer, Exception, long) method instead.
      Parameters:
      mainListenerId - the listener id.
      topicName - the topic name of the DestinationTopic to be returned.
      Returns:
      the next DestinationTopic in the chain registered for that topic.
    • getDltFor

      @Nullable DestinationTopic getDltFor(String mainListenerId, String topicName)
      Returns the DestinationTopic instance registered as DLT for the given topic, or null if none is found.
      Parameters:
      mainListenerId - the listener id.
      topicName - the topic name for which to look the DLT for
      Returns:
      The DestinationTopic instance corresponding to the DLT.