Class DataSourceXAConnectionFactory
- java.lang.Object
-
- org.apache.tomcat.dbcp.dbcp2.managed.DataSourceXAConnectionFactory
-
- All Implemented Interfaces:
ConnectionFactory,XAConnectionFactory
public class DataSourceXAConnectionFactory extends java.lang.Object implements XAConnectionFactory
An implementation of XAConnectionFactory which uses a real XADataSource to obtain connections and XAResources.- Since:
- 2.0
-
-
Constructor Summary
Constructors Constructor Description DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, char[] userPassword)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, char[] userPassword, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, java.lang.String userPassword)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.sql.ConnectioncreateConnection()Creates a newConnectionin an implementation specific fashion.TransactionRegistrygetTransactionRegistry()Gets the TransactionRegistry for this connection factory which contains the XAResource for every connection created by this factory.java.lang.StringgetUsername()Deprecated.UsegetUserName().java.lang.StringgetUserName()Gets the user name used to authenticate new connections.char[]getUserPassword()Gets the user password.javax.sql.XADataSourcegetXaDataSource()Gets the XA data source.voidsetPassword(char[] userPassword)Sets the password used to authenticate new connections.voidsetPassword(java.lang.String userPassword)Sets the password used to authenticate new connections.voidsetUsername(java.lang.String userName)Sets the user name used to authenticate new connections.
-
-
-
Constructor Detail
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. The connections are enlisted into transactions using the specified transaction manager.- Parameters:
transactionManager- the transaction manager in which connections will be enlistedxaDataSource- the data source from which connections will be retrieved- Since:
- 2.6.0
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, char[] userPassword)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. The connections are enlisted into transactions using the specified transaction manager.- Parameters:
transactionManager- the transaction manager in which connections will be enlistedxaDataSource- the data source from which connections will be retrieveduserName- the user name used for authenticating new connections or null for unauthenticateduserPassword- the password used for authenticating new connections
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, char[] userPassword, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. The connections are enlisted into transactions using the specified transaction manager.- Parameters:
transactionManager- the transaction manager in which connections will be enlistedxaDataSource- the data source from which connections will be retrieveduserName- the user name used for authenticating new connections or null for unauthenticateduserPassword- the password used for authenticating new connectionstransactionSynchronizationRegistry- register with this TransactionSynchronizationRegistry- Since:
- 2.6.0
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, java.lang.String userName, java.lang.String userPassword)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. The connections are enlisted into transactions using the specified transaction manager.- Parameters:
transactionManager- the transaction manager in which connections will be enlistedxaDataSource- the data source from which connections will be retrieveduserName- the user name used for authenticating new connections or null for unauthenticateduserPassword- the password used for authenticating new connections
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(javax.transaction.TransactionManager transactionManager, javax.sql.XADataSource xaDataSource, javax.transaction.TransactionSynchronizationRegistry transactionSynchronizationRegistry)Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. The connections are enlisted into transactions using the specified transaction manager.- Parameters:
transactionManager- the transaction manager in which connections will be enlistedxaDataSource- the data source from which connections will be retrievedtransactionSynchronizationRegistry- register with this TransactionSynchronizationRegistry
-
-
Method Detail
-
createConnection
public java.sql.Connection createConnection() throws java.sql.SQLExceptionDescription copied from interface:XAConnectionFactoryCreates a newConnectionin an implementation specific fashion.An implementation can assume that the caller of this will wrap the connection in a proxy that protects access to the setAutoCommit, commit and rollback when enrolled in a XA transaction.
- Specified by:
createConnectionin interfaceConnectionFactory- Specified by:
createConnectionin interfaceXAConnectionFactory- Returns:
- a new
Connection - Throws:
java.sql.SQLException- if a database error occurs creating the connection
-
getTransactionRegistry
public TransactionRegistry getTransactionRegistry()
Description copied from interface:XAConnectionFactoryGets the TransactionRegistry for this connection factory which contains the XAResource for every connection created by this factory.- Specified by:
getTransactionRegistryin interfaceXAConnectionFactory- Returns:
- the transaction registry for this connection factory
-
getUsername
@Deprecated public java.lang.String getUsername()
Deprecated.UsegetUserName().Gets the user name used to authenticate new connections.- Returns:
- the user name or null if unauthenticated connections are used
-
getUserName
public java.lang.String getUserName()
Gets the user name used to authenticate new connections.- Returns:
- the user name or null if unauthenticated connections are used
- Since:
- 2.6.0
-
getUserPassword
public char[] getUserPassword()
Gets the user password.- Returns:
- the user password.
-
getXaDataSource
public javax.sql.XADataSource getXaDataSource()
Gets the XA data source.- Returns:
- the XA data source.
-
setPassword
public void setPassword(char[] userPassword)
Sets the password used to authenticate new connections.- Parameters:
userPassword- the password used for authenticating the connection or null for unauthenticated.- Since:
- 2.4.0
-
setPassword
public void setPassword(java.lang.String userPassword)
Sets the password used to authenticate new connections.- Parameters:
userPassword- the password used for authenticating the connection or null for unauthenticated
-
setUsername
public void setUsername(java.lang.String userName)
Sets the user name used to authenticate new connections.- Parameters:
userName- the user name used for authenticating the connection or null for unauthenticated
-
-