public class LeoDataSource extends Object implements DataSource
Modifier and Type | Field and Description |
---|---|
protected Connection |
mConn
Database connection object.
|
protected String |
mDriver
JDBC driver class name.
|
protected String |
mUrl
JDBC database connection URL.
|
Constructor and Description |
---|
LeoDataSource(Connection conn)
Initialize the DataSource with the connection object.
|
LeoDataSource(String driver,
String url,
String username,
String password)
Initialize the DataSource with the connection information.
|
Modifier and Type | Method and Description |
---|---|
protected void |
connect(String driver,
String url,
String user,
String pwd)
Connect to the database.
|
Connection |
getConnection()
Attempts to establish a connection with the data source that
this
DataSource object represents. |
Connection |
getConnection(String username,
String password)
Attempts to establish a connection with the data source that
this
DataSource object represents. |
int |
getLoginTimeout()
Gets the maximum time in seconds that this data source can wait
while attempting to connect to a database.
|
PrintWriter |
getLogWriter()
Retrieves the log writer for this
DataSource
object. |
Logger |
getParentLogger()
Return the parent Logger of all the Loggers used by this data source.
|
boolean |
isWrapperFor(Class<?> iface)
Returns true if this either implements the interface argument or is directly or indirectly a wrapper
for an object that does.
|
void |
setLoginTimeout(int seconds)
Sets the maximum time in seconds that this data source will wait
while attempting to connect to a database.
|
void |
setLogWriter(PrintWriter out)
Sets the log writer for this
DataSource
object to the given java.io.PrintWriter object. |
<T> T |
unwrap(Class<T> iface)
Returns an object that implements the given interface to allow access to
non-standard methods, or standard methods not exposed by the proxy.
|
protected Connection mConn
protected String mDriver
protected String mUrl
public LeoDataSource(Connection conn) throws SQLException
conn
- connection object to useSQLException
- if there is an error getting the MetaData from the connection objectpublic LeoDataSource(String driver, String url, String username, String password) throws SQLException, ClassNotFoundException
driver
- JDBC driver class nameurl
- JDBC connection URLusername
- database user namepassword
- database user passwordSQLException
- if there is an error connecting to the databaseClassNotFoundException
- if the driver class is not in the classpathprotected void connect(String driver, String url, String user, String pwd) throws ClassNotFoundException, SQLException
driver
- Database driver classurl
- URL for the connection.user
- Username. If null, the connection is made without using a username and password.pwd
- Password if needed.ClassNotFoundException
- thrown if the JDBC driver cannot be found.SQLException
- thrown if there is an exception with the query or result set.public PrintWriter getLogWriter() throws SQLException
Retrieves the log writer for this DataSource
object.
The log writer is a character output stream to which all logging
and tracing messages for this data source will be
printed. This includes messages printed by the methods of this
object, messages printed by methods of other objects manufactured
by this object, and so on. Messages printed to a data source
specific log writer are not printed to the log writer associated
with the java.sql.DriverManager
class. When a
DataSource
object is
created, the log writer is initially null; in other words, the
default is for logging to be disabled.
getLogWriter
in interface CommonDataSource
SQLException
- if a database access error occurssetLogWriter(java.io.PrintWriter)
public void setLogWriter(PrintWriter out) throws SQLException
Sets the log writer for this DataSource
object to the given java.io.PrintWriter
object.
The log writer is a character output stream to which all logging
and tracing messages for this data source will be
printed. This includes messages printed by the methods of this
object, messages printed by methods of other objects manufactured
by this object, and so on. Messages printed to a data source-
specific log writer are not printed to the log writer associated
with the java.sql.DriverManager
class. When a
DataSource
object is created the log writer is
initially null; in other words, the default is for logging to be
disabled.
setLogWriter
in interface CommonDataSource
out
- the new log writer; to disable logging, set to nullSQLException
- if a database access error occursgetLogWriter()
public void setLoginTimeout(int seconds) throws SQLException
Sets the maximum time in seconds that this data source will wait
while attempting to connect to a database. A value of zero
specifies that the timeout is the default system timeout
if there is one; otherwise, it specifies that there is no timeout.
When a DataSource
object is created, the login timeout is
initially zero.
setLoginTimeout
in interface CommonDataSource
seconds
- the data source login time limitSQLException
- if a database access error occurs.getLoginTimeout()
public int getLoginTimeout() throws SQLException
DataSource
object is created, the login timeout is
initially zero.getLoginTimeout
in interface CommonDataSource
SQLException
- if a database access error occurs.setLoginTimeout(int)
public Logger getParentLogger() throws SQLFeatureNotSupportedException
getParentLogger
in interface CommonDataSource
SQLFeatureNotSupportedException
- if the data source does not use java.util.logging
.public Connection getConnection() throws SQLException
Attempts to establish a connection with the data source that
this DataSource
object represents.
getConnection
in interface DataSource
SQLException
- if a database access error occurspublic Connection getConnection(String username, String password) throws SQLException
Attempts to establish a connection with the data source that
this DataSource
object represents.
getConnection
in interface DataSource
username
- the database user on whose behalf the connection is
being madepassword
- the user's passwordSQLException
- if a database access error occurspublic <T> T unwrap(Class<T> iface) throws SQLException
unwrap
recursively on the wrapped object
or a proxy for that result. If the receiver is not a
wrapper and does not implement the interface, then an SQLException
is thrown.unwrap
in interface Wrapper
iface
- A Class defining an interface that the result must implement.SQLException
- If no object found that implements the interfacepublic boolean isWrapperFor(Class<?> iface) throws SQLException
isWrapperFor
on the wrapped
object. If this does not implement the interface and is not a wrapper, return false.
This method should be implemented as a low-cost operation compared to unwrap
so that
callers can use this method to avoid expensive unwrap
calls that may fail. If this method
returns true then calling unwrap
with the same argument should succeed.isWrapperFor
in interface Wrapper
iface
- a Class defining an interface.SQLException
- if an error occurs while determining whether this is a wrapper
for an object with the given interface.Copyright © 2018 Department of Veterans Affairs. All Rights Reserved.