Interface DatasourceManager
-
public interface DatasourceManager
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.StringbeginTransaction(java.lang.String datasource, int isolationLevel, long timeout)Begins a transaction against the named datasource.voidbeginTransaction(java.lang.String id, java.lang.String datasource, int isolationLevel, long timeout)Named queries want to specify their own transaction ID.voidcloseTransaction(java.lang.String txId)Closes the given transaction.voidcommitTransaction(java.lang.String txId)Commits any pending statements for the given transaction.SRConnectiongetConnection(long dataSource)Retrieves a JDBC new connection for the datasource with the given id.SRConnectiongetConnection(java.lang.String dataSource)Retrieves a JDBC new connection for the given named datasource.DatasourcegetDatasource(long id)DatasourcegetDatasource(java.lang.String name)Looks up a datasource by name.java.util.List<Datasource>getDatasources()Returns a list of all known datasources currently installed.DatasourceMetaProvidergetMetaProvider()SRConnectiongetTransactionConnection(java.lang.String txId)Returns the connection for a given transaction id.voidrollbackTransaction(java.lang.String txId)Rolls back any statements executed on this transaction since the last commit or since the beginning of the transactionvoidtouchTransaction(java.lang.String txId)Updates the last-used time for the transaction, if it still exists.
-
-
-
Method Detail
-
getConnection
SRConnection getConnection(java.lang.String dataSource) throws java.sql.SQLException
Retrieves a JDBC new connection for the given named datasource. If the datasource named is currently faulted, the connection may come from its failover datasource, if there is one.- Throws:
java.lang.IllegalArgumentException- if the provided datasource does not exist.java.sql.SQLException
-
getConnection
SRConnection getConnection(long dataSource) throws java.sql.SQLException
Retrieves a JDBC new connection for the datasource with the given id. If the datasource is currently faulted, the connection may come from its failover datasource, if there is one.- Throws:
java.sql.SQLException
-
beginTransaction
java.lang.String beginTransaction(java.lang.String datasource, int isolationLevel, long timeout) throws java.sql.SQLExceptionBegins a transaction against the named datasource.- Parameters:
datasource- The name of the datasource to useisolationLevel- a constant from java.sql.Connection indicating the new transaction's isolation level.timeout- Time to wait between uses of the transaction's connection before it will be automatically rolled back and closed.- Returns:
- A new transaction ID, which will be used for all further interaction with this transaction.
- Throws:
java.sql.SQLException
-
beginTransaction
void beginTransaction(java.lang.String id, java.lang.String datasource, int isolationLevel, long timeout) throws java.sql.SQLExceptionNamed queries want to specify their own transaction ID. No return value needed, because we specified ID.- Parameters:
id- The transaction ID. Not empty.datasource- The name of the datasource to use.isolationLevel- a constant from java.sql.Connection indicating the new transaction's isolation level.timeout- Time to wait between uses of the transaction's connection before it will be automatically rolled back and closed.- Throws:
java.sql.SQLException
-
commitTransaction
void commitTransaction(java.lang.String txId) throws java.sql.SQLExceptionCommits any pending statements for the given transaction.- Throws:
java.sql.SQLException
-
rollbackTransaction
void rollbackTransaction(java.lang.String txId) throws java.sql.SQLExceptionRolls back any statements executed on this transaction since the last commit or since the beginning of the transaction- Throws:
java.sql.SQLException
-
closeTransaction
void closeTransaction(java.lang.String txId) throws java.sql.SQLExceptionCloses the given transaction. The transaction ID is no longer valid after this method completes.- Throws:
java.sql.SQLException
-
touchTransaction
void touchTransaction(java.lang.String txId)
Updates the last-used time for the transaction, if it still exists.
-
getTransactionConnection
SRConnection getTransactionConnection(java.lang.String txId) throws java.sql.SQLException
Returns the connection for a given transaction id.- Throws:
java.sql.SQLException
-
getDatasource
@Nullable Datasource getDatasource(java.lang.String name)
Looks up a datasource by name. Will return null if the datasource doesn't exist
-
getDatasource
@Nullable Datasource getDatasource(long id)
-
getDatasources
java.util.List<Datasource> getDatasources()
Returns a list of all known datasources currently installed. This list is not backed by the manager - changes to it will not have any effect.
-
getMetaProvider
DatasourceMetaProvider getMetaProvider()
-
-