Class JmsDestinationAccessor
java.lang.Object
org.springframework.jms.support.JmsAccessor
org.springframework.jms.support.destination.JmsDestinationAccessor
- All Implemented Interfaces:
InitializingBean
- Direct Known Subclasses:
AbstractJmsListeningContainer,JmsTemplate
Base class for
JmsTemplate and other
JMS-accessing gateway helpers, adding destination-related properties to
JmsAccessor's common properties.
Not intended to be used directly.
See JmsTemplate.
- Since:
- 1.2.5
- Author:
- Juergen Hoeller
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longTimeout value indicating a blocking receive without timeout.static final longTimeout value indicating that a receive operation should check if a message is immediately available without blocking.Fields inherited from class org.springframework.jms.support.JmsAccessor
logger -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturn the DestinationResolver for this accessor (nevernull).booleanReturn whether the Publish/Subscribe domain (Topics) is used.receiveFromConsumer(MessageConsumer consumer, long timeout) Actually receive a message from the given consumer.protected DestinationresolveDestinationName(Session session, String destinationName) Resolve the given destination name into a JMSDestination, via this accessor'sDestinationResolver.voidsetDestinationResolver(DestinationResolver destinationResolver) Set theDestinationResolverthat is to be used to resolveDestinationreferences for this accessor.voidsetPubSubDomain(boolean pubSubDomain) Configure the destination accessor with knowledge of the JMS domain used.Methods inherited from class org.springframework.jms.support.JmsAccessor
afterPropertiesSet, convertJmsAccessException, createConnection, createSession, getConnectionFactory, getSessionAcknowledgeMode, isClientAcknowledge, isSessionTransacted, obtainConnectionFactory, setConnectionFactory, setSessionAcknowledgeMode, setSessionAcknowledgeModeName, setSessionTransacted
-
Field Details
-
RECEIVE_TIMEOUT_NO_WAIT
public static final long RECEIVE_TIMEOUT_NO_WAITTimeout value indicating that a receive operation should check if a message is immediately available without blocking.- Since:
- 4.3
- See Also:
-
RECEIVE_TIMEOUT_INDEFINITE_WAIT
public static final long RECEIVE_TIMEOUT_INDEFINITE_WAITTimeout value indicating a blocking receive without timeout.- Since:
- 4.3
- See Also:
-
-
Constructor Details
-
JmsDestinationAccessor
public JmsDestinationAccessor()
-
-
Method Details
-
setDestinationResolver
Set theDestinationResolverthat is to be used to resolveDestinationreferences for this accessor.The default resolver is a DynamicDestinationResolver. Specify a JndiDestinationResolver for resolving destination names as JNDI locations.
- See Also:
-
getDestinationResolver
Return the DestinationResolver for this accessor (nevernull). -
setPubSubDomain
public void setPubSubDomain(boolean pubSubDomain) Configure the destination accessor with knowledge of the JMS domain used. Default is Point-to-Point (Queues).This setting primarily indicates what type of destination to resolve if dynamic destinations are enabled.
-
isPubSubDomain
-
resolveDestinationName
protected Destination resolveDestinationName(Session session, String destinationName) throws JMSException Resolve the given destination name into a JMSDestination, via this accessor'sDestinationResolver.- Parameters:
session- the current JMSSessiondestinationName- the name of the destination- Returns:
- the located
Destination - Throws:
JMSException- if resolution failed- See Also:
-
receiveFromConsumer
protected @Nullable Message receiveFromConsumer(MessageConsumer consumer, long timeout) throws JMSException Actually receive a message from the given consumer.- Parameters:
consumer- the JMS MessageConsumer to receive withtimeout- the receive timeout (a negative value indicates a no-wait receive; 0 indicates an indefinite wait attempt)- Returns:
- the JMS Message received, or
nullif none - Throws:
JMSException- if thrown by JMS API methods- Since:
- 4.3
- See Also:
-