Interface ConnectionFactoryUtils.ResourceFactory
- Enclosing class:
- ConnectionFactoryUtils
public static interface ConnectionFactoryUtils.ResourceFactory
Callback interface for resource creation. Serving as argument for thedoGetTransactionalSessionmethod.
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ConnectioncreateConnection()Create a new JMS Connection for registration with a JmsResourceHolder.SessioncreateSession(Connection con)Create a new JMS Session for registration with a JmsResourceHolder.ConnectiongetConnection(JmsResourceHolder holder)Fetch an appropriate Connection from the given JmsResourceHolder.SessiongetSession(JmsResourceHolder holder)Fetch an appropriate Session from the given JmsResourceHolder.booleanisSynchedLocalTransactionAllowed()Return whether to allow for a local JMS transaction that is synchronized with a Spring-managed transaction (where the main transaction might be a JDBC-based one for a specific DataSource, for example), with the JMS transaction committing right after the main transaction.
Method Detail
getSession
Session getSession(JmsResourceHolder holder)
Fetch an appropriate Session from the given JmsResourceHolder.- Parameters:
holder- the JmsResourceHolder- Returns:
- an appropriate Session fetched from the holder, or
nullif none found
getConnection
Connection getConnection(JmsResourceHolder holder)
Fetch an appropriate Connection from the given JmsResourceHolder.- Parameters:
holder- the JmsResourceHolder- Returns:
- an appropriate Connection fetched from the holder, or
nullif none found
createConnection
Connection createConnection() throws JMSException
Create a new JMS Connection for registration with a JmsResourceHolder.- Returns:
- the new JMS Connection
- Throws:
JMSException- if thrown by JMS API methods
createSession
Session createSession(Connection con) throws JMSException
Create a new JMS Session for registration with a JmsResourceHolder.- Parameters:
con- the JMS Connection to create a Session for- Returns:
- the new JMS Session
- Throws:
JMSException- if thrown by JMS API methods
isSynchedLocalTransactionAllowed
boolean isSynchedLocalTransactionAllowed()
Return whether to allow for a local JMS transaction that is synchronized with a Spring-managed transaction (where the main transaction might be a JDBC-based one for a specific DataSource, for example), with the JMS transaction committing right after the main transaction.- Returns:
- whether to allow for synchronizing a local JMS transaction