JmsTransactionManager102 (Spring Framework 3.2.1.RELEASE API)
Date: 2013-01-24

org.springframework.jms.connection

## Class JmsTransactionManager102

- java.lang.Object
- - org.springframework.transaction.support.AbstractPlatformTransactionManager
  - - org.springframework.jms.connection.JmsTransactionManager
    - - org.springframework.jms.connection.JmsTransactionManager102

- All Implemented Interfaces:
    Serializable, InitializingBean, PlatformTransactionManager, ResourceTransactionManager

  Deprecated.
  as of Spring 3.0, in favor of the JMS 1.1 based `JmsTransactionManager`

      @Deprecated
      public class JmsTransactionManager102
      extends JmsTransactionManager

  A subclass of `JmsTransactionManager` for the JMS 1.0.2 specification, not relying on JMS 1.1 methods like JmsTransactionManager itself. This class can be used for JMS 1.0.2 providers, offering the same API as JmsTransactionManager does for JMS 1.1 providers.

  You need to set the `"pubSubDomain" property`, since this class will always explicitly differentiate between a `QueueConnection` and a `TopicConnection`.

  Since:
    1.1
  Author:
    Juergen Hoeller
  See Also:
    `JmsTransactionManager.setConnectionFactory(javax.jms.ConnectionFactory)`, `setPubSubDomain(boolean)`, Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.springframework.transaction.support.AbstractPlatformTransactionManager

      `AbstractPlatformTransactionManager.SuspendedResourcesHolder`

  - ### Field Summary

    - ### Fields inherited from class org.springframework.transaction.support.AbstractPlatformTransactionManager

      `logger, SYNCHRONIZATION_ALWAYS, SYNCHRONIZATION_NEVER, SYNCHRONIZATION_ON_ACTUAL_TRANSACTION`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JmsTransactionManager102()` Deprecated. Create a new JmsTransactionManager102 for bean-style usage.
    `JmsTransactionManager102(ConnectionFactory connectionFactory, boolean pubSubDomain)` Deprecated. Create a new JmsTransactionManager102, given a ConnectionFactory.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `afterPropertiesSet()` Deprecated. In addition to checking if the connection factory is set, make sure that the supplied connection factory is of the appropriate type for the specified destination type: QueueConnectionFactory for queues, and TopicConnectionFactory for topics.
    `protected Connection` | `createConnection()` Deprecated. This implementation overrides the superclass method to use JMS 1.0.2 API.
    `protected Session` | `createSession(Connection con)` Deprecated. This implementation overrides the superclass method to use JMS 1.0.2 API.
    `boolean` | `isPubSubDomain()` Deprecated. Return whether the Publish/Subscribe domain (Topics) is used.
    `void` | `setPubSubDomain(boolean pubSubDomain)` Deprecated. Configure the transaction manager with knowledge of the JMS domain used.

    - ### Methods inherited from class org.springframework.jms.connection.JmsTransactionManager

      `doBegin, doCleanupAfterCompletion, doCommit, doGetTransaction, doResume, doRollback, doSetRollbackOnly, doSuspend, getConnectionFactory, getResourceFactory, isExistingTransaction, setConnectionFactory`

    - ### Methods inherited from class org.springframework.transaction.support.AbstractPlatformTransactionManager

      `commit, determineTimeout, getDefaultTimeout, getTransaction, getTransactionSynchronization, invokeAfterCompletion, isFailEarlyOnGlobalRollbackOnly, isGlobalRollbackOnParticipationFailure, isNestedTransactionAllowed, isRollbackOnCommitFailure, isValidateExistingTransaction, newTransactionStatus, prepareForCommit, prepareSynchronization, prepareTransactionStatus, registerAfterCompletionWithExistingTransaction, resume, rollback, setDefaultTimeout, setFailEarlyOnGlobalRollbackOnly, setGlobalRollbackOnParticipationFailure, setNestedTransactionAllowed, setRollbackOnCommitFailure, setTransactionSynchronization, setTransactionSynchronizationName, setValidateExistingTransaction, shouldCommitOnGlobalRollbackOnly, suspend, triggerBeforeCommit, triggerBeforeCompletion, useSavepointForNestedTransaction`

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

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

    - ### Methods inherited from interface org.springframework.transaction.PlatformTransactionManager

      `commit, getTransaction, rollback`

- - ### Constructor Detail

    - #### JmsTransactionManager102

          public JmsTransactionManager102()

      Deprecated.
      Create a new JmsTransactionManager102 for bean-style usage.

      Note: The ConnectionFactory has to be set before using the instance. This constructor can be used to prepare a JmsTemplate via a BeanFactory, typically setting the ConnectionFactory via setConnectionFactory.

      See Also:
        `JmsTransactionManager.setConnectionFactory(javax.jms.ConnectionFactory)`

    - #### JmsTransactionManager102

          public JmsTransactionManager102(ConnectionFactory connectionFactory,
                                  boolean pubSubDomain)

      Deprecated.
      Create a new JmsTransactionManager102, given a ConnectionFactory.
      Parameters:
        `connectionFactory` - the ConnectionFactory to manage transactions for
        `pubSubDomain` - whether the Publish/Subscribe domain (Topics) or Point-to-Point domain (Queues) should be used
      See Also:
        `setPubSubDomain(boolean)`

  - ### Method Detail

    - #### setPubSubDomain

          public void setPubSubDomain(boolean pubSubDomain)

      Deprecated.
      Configure the transaction manager with knowledge of the JMS domain used. This tells the JMS 1.0.2 provider which class hierarchy to use for creating Connections and Sessions.

      Default is Point-to-Point (Queues).

      Parameters:
        `pubSubDomain` - `true` for Publish/Subscribe domain (Topics), `false` for Point-to-Point domain (Queues)

    - #### isPubSubDomain

          public boolean isPubSubDomain()

      Deprecated.
      Return whether the Publish/Subscribe domain (Topics) is used. Otherwise, the Point-to-Point domain (Queues) is used.

    - #### afterPropertiesSet

          public void afterPropertiesSet()

      Deprecated.
      In addition to checking if the connection factory is set, make sure that the supplied connection factory is of the appropriate type for the specified destination type: QueueConnectionFactory for queues, and TopicConnectionFactory for topics.
      Specified by:
        `afterPropertiesSet` in interface `InitializingBean`
      Overrides:
        `afterPropertiesSet` in class `JmsTransactionManager`

    - #### createConnection

          protected Connection createConnection()
                                         throws JMSException

      Deprecated.
      This implementation overrides the superclass method to use JMS 1.0.2 API.
      Overrides:
        `createConnection` in class `JmsTransactionManager`
      Returns:
        the new JMS Connection
      Throws:
        `JMSException` - if thrown by JMS API methods

    - #### createSession

          protected Session createSession(Connection con)
                                   throws JMSException

      Deprecated.
      This implementation overrides the superclass method to use JMS 1.0.2 API.
      Overrides:
        `createSession` in class `JmsTransactionManager`
      Parameters:
        `con` - the JMS Connection to create a Session for
      Returns:
        the new JMS Session
      Throws:
        `JMSException` - if thrown by JMS API methods