Package org.apache.commons.dbcp.managed
Class DataSourceXAConnectionFactory
java.lang.Object
org.apache.commons.dbcp.managed.DataSourceXAConnectionFactory
- All Implemented Interfaces:
ConnectionFactory
,XAConnectionFactory
An implementation of XAConnectionFactory which uses a real XADataSource to obtain connections and XAResources.
- Version:
- $Revision$
- Author:
- Dain Sundstrom
-
Constructor Summary
ConstructorsConstructorDescriptionDataSourceXAConnectionFactory
(TransactionManager transactionManager, XADataSource xaDataSource) Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections.DataSourceXAConnectionFactory
(TransactionManager transactionManager, XADataSource xaDataSource, String username, String password) Creates an DataSourceXAConnectionFactory which uses the specified XADataSource to create database connections. -
Method Summary
Modifier and TypeMethodDescriptionCreate a newConnection
in an implementation specific fashion.Gets the TransactionRegistry for this connection factory which contains a the XAResource for every connection created by this factory.Gets the username used to authenticate new connections.void
setPassword
(String password) Sets the password used to authenticate new connections.void
setUsername
(String username) Sets the username used to authenticate new connections.
-
Constructor Details
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(TransactionManager transactionManager, 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
-
DataSourceXAConnectionFactory
public DataSourceXAConnectionFactory(TransactionManager transactionManager, XADataSource xaDataSource, String username, String password) 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 username used for authenticating new connections or null for unauthenticatedpassword
- the password used for authenticating new connections
-
-
Method Details
-
getUsername
Gets the username used to authenticate new connections.- Returns:
- the user name or null if unauthenticated connections are used
-
setUsername
Sets the username used to authenticate new connections.- Parameters:
username
- the username used for authenticating the connection or null for unauthenticated
-
setPassword
Sets the password used to authenticate new connections.- Parameters:
password
- the password used for authenticating the connection or null for unauthenticated
-
getTransactionRegistry
Description copied from interface:XAConnectionFactory
Gets the TransactionRegistry for this connection factory which contains a the XAResource for every connection created by this factory.- Specified by:
getTransactionRegistry
in interfaceXAConnectionFactory
- Returns:
- the transaction registry for this connection factory
-
createConnection
Description copied from interface:XAConnectionFactory
Create a newConnection
in 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:
createConnection
in interfaceConnectionFactory
- Specified by:
createConnection
in interfaceXAConnectionFactory
- Returns:
- a new
Connection
- Throws:
SQLException
- if a database error occurs creating the connection
-