org.springframework.jms.support.destination

## Interface DestinationResolver

All Known Subinterfaces:
  CachingDestinationResolver

All Known Implementing Classes:
  BeanFactoryDestinationResolver, DynamicDestinationResolver, JndiDestinationResolver

Functional Interface:
  This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface DestinationResolver

Strategy interface for resolving JMS destinations.

Used by `JmsTemplate` for resolving destination names from simple `Strings` to actual `Destination` implementation instances.

The default `DestinationResolver` implementation used by `JmsTemplate` instances is the `DynamicDestinationResolver` class. Consider using the `JndiDestinationResolver` for more advanced scenarios.

Since:
  1.1
Author:
  Juergen Hoeller
See Also:
  `JmsDestinationAccessor.setDestinationResolver(org.springframework.jms.support.destination.DestinationResolver)`, `DynamicDestinationResolver`, `JndiDestinationResolver`

### Method Summary

All Methods Instance Methods Abstract Methods
`Destination` `resolveDestinationName(Session session, String destinationName, boolean pubSubDomain)` Resolve the given destination name, either as located resource or as dynamic destination.

### Method Detail

#### resolveDestinationName

    Destination resolveDestinationName(@Nullable
                                       Session session,
                                       String destinationName,
                                       boolean pubSubDomain)
                                throws JMSException

Resolve the given destination name, either as located resource or as dynamic destination.

Parameters:
  `session` - the current JMS Session (may be `null` if the resolver implementation is able to work without it)
  `destinationName` - the name of the destination
  `pubSubDomain` - `true` if the domain is pub-sub, `false` if P2P
Returns:
  the JMS destination (either a topic or a queue)
Throws:
  `JMSException` - if the JMS Session failed to resolve the destination
  `DestinationResolutionException` - in case of general destination resolution failure