org.springframework.jms.config

## Class AbstractJmsListenerContainerFactory<C extends AbstractMessageListenerContainer>

- java.lang.Object
- - org.springframework.jms.config.AbstractJmsListenerContainerFactory<C>

Type Parameters:
  `C` - the container type

All Implemented Interfaces:
  JmsListenerContainerFactory<C>

Direct Known Subclasses:
  DefaultJmsListenerContainerFactory, SimpleJmsListenerContainerFactory

    public abstract class AbstractJmsListenerContainerFactory<C extends AbstractMessageListenerContainer>
    extends Object
    implements JmsListenerContainerFactory<C>

Base `JmsListenerContainerFactory` for Spring's base container implementation.

Since:
  4.1
Author:
  Stephane Nicoll
See Also:
  `AbstractMessageListenerContainer`

### Field Summary

Fields
`protected Log` `logger`

### Constructor Summary

Constructors
Constructor and Description
`AbstractJmsListenerContainerFactory()`

### Method Summary

All Methods Instance Methods Abstract Methods Concrete Methods
`protected abstract C` `createContainerInstance()` Create an empty container instance.
`C` `createListenerContainer(JmsListenerEndpoint endpoint)` Create a `MessageListenerContainer` for the given `JmsListenerEndpoint`.
`protected void` `initializeContainer(C instance)` Further initialize the specified container.
`void` `setAutoStartup(boolean autoStartup)`
`void` `setClientId(String clientId)`
`void` `setConnectionFactory(ConnectionFactory connectionFactory)`
`void` `setDestinationResolver(DestinationResolver destinationResolver)`
`void` `setErrorHandler(org.springframework.util.ErrorHandler errorHandler)`
`void` `setExceptionListener(ExceptionListener exceptionListener)`
`void` `setMessageConverter(MessageConverter messageConverter)`
`void` `setPhase(int phase)`
`void` `setPubSubDomain(Boolean pubSubDomain)`
`void` `setReplyPubSubDomain(Boolean replyPubSubDomain)`
`void` `setReplyQosSettings(QosSettings replyQosSettings)`
`void` `setSessionAcknowledgeMode(Integer sessionAcknowledgeMode)`
`void` `setSessionTransacted(Boolean sessionTransacted)`
`void` `setSubscriptionDurable(Boolean subscriptionDurable)`
`void` `setSubscriptionShared(Boolean subscriptionShared)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### logger

    protected final Log logger

### Constructor Detail

#### AbstractJmsListenerContainerFactory

    public AbstractJmsListenerContainerFactory()

### Method Detail

#### setConnectionFactory

    public void setConnectionFactory(ConnectionFactory connectionFactory)

See Also:
  `JmsAccessor.setConnectionFactory(ConnectionFactory)`

#### setDestinationResolver

    public void setDestinationResolver(DestinationResolver destinationResolver)

See Also:
  `JmsDestinationAccessor.setDestinationResolver(DestinationResolver)`

#### setMessageConverter

    public void setMessageConverter(MessageConverter messageConverter)

See Also:
  `AbstractMessageListenerContainer.setMessageConverter(MessageConverter)`

#### setExceptionListener

    public void setExceptionListener(ExceptionListener exceptionListener)

Since:
  5.2.8
See Also:
  `AbstractMessageListenerContainer.setExceptionListener(ExceptionListener)`

#### setErrorHandler

    public void setErrorHandler(org.springframework.util.ErrorHandler errorHandler)

See Also:
  `AbstractMessageListenerContainer.setErrorHandler(ErrorHandler)`

#### setSessionTransacted

    public void setSessionTransacted(Boolean sessionTransacted)

See Also:
  `JmsAccessor.setSessionTransacted(boolean)`

#### setSessionAcknowledgeMode

    public void setSessionAcknowledgeMode(Integer sessionAcknowledgeMode)

See Also:
  `JmsAccessor.setSessionAcknowledgeMode(int)`

#### setPubSubDomain

    public void setPubSubDomain(Boolean pubSubDomain)

See Also:
  `JmsDestinationAccessor.setPubSubDomain(boolean)`

#### setReplyPubSubDomain

    public void setReplyPubSubDomain(Boolean replyPubSubDomain)

See Also:
  `AbstractMessageListenerContainer.setReplyPubSubDomain(boolean)`

#### setReplyQosSettings

    public void setReplyQosSettings(QosSettings replyQosSettings)

See Also:
  `AbstractMessageListenerContainer.setReplyQosSettings(QosSettings)`

#### setSubscriptionDurable

    public void setSubscriptionDurable(Boolean subscriptionDurable)

See Also:
  `AbstractMessageListenerContainer.setSubscriptionDurable(boolean)`

#### setSubscriptionShared

    public void setSubscriptionShared(Boolean subscriptionShared)

See Also:
  `AbstractMessageListenerContainer.setSubscriptionShared(boolean)`

#### setClientId

    public void setClientId(String clientId)

See Also:
  `AbstractJmsListeningContainer.setClientId(String)`

#### setPhase

    public void setPhase(int phase)

See Also:
  `AbstractJmsListeningContainer.setPhase(int)`

#### setAutoStartup

    public void setAutoStartup(boolean autoStartup)

See Also:
  `AbstractJmsListeningContainer.setAutoStartup(boolean)`

#### createListenerContainer

    public C createListenerContainer(JmsListenerEndpoint endpoint)

Description copied from interface: `JmsListenerContainerFactory`
Create a `MessageListenerContainer` for the given `JmsListenerEndpoint`.

Specified by:
  `createListenerContainer` in interface `JmsListenerContainerFactory<C extends AbstractMessageListenerContainer>`
Parameters:
  `endpoint` - the endpoint to configure
Returns:
  the created container

#### createContainerInstance

    protected abstract C createContainerInstance()

Create an empty container instance.

#### initializeContainer

    protected void initializeContainer(C instance)

Further initialize the specified container.

Subclasses can inherit from this method to apply extra configuration if necessary.