org.springframework.jdbc.datasource
Class DelegatingDataSource

java.lang.Object
  extended byorg.springframework.jdbc.datasource.DelegatingDataSource
All Implemented Interfaces:
DataSource, InitializingBean
Direct Known Subclasses:
LazyConnectionDataSourceProxy, TransactionAwareDataSourceProxy, UserCredentialsDataSourceAdapter

public abstract class DelegatingDataSource
extends Object
implements DataSource, InitializingBean

DataSource implementation that delegates all calls to a given target DataSource. Abstract because it is meant to be to be subclasses, overriding specific methods that should not simply delegate to the target.

Since:
1.1
Author:
Juergen Hoeller

Field Summary
protected  Log logger
          Logger available to subclasses
 
Constructor Summary
DelegatingDataSource()
           
 
Method Summary
 void afterPropertiesSet()
          Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).
 Connection getConnection()
           
 Connection getConnection(String username, String password)
           
 int getLoginTimeout()
           
 PrintWriter getLogWriter()
           
 DataSource getTargetDataSource()
          Return the target DataSource that this DataSource should delegate to.
 void setLoginTimeout(int seconds)
           
 void setLogWriter(PrintWriter out)
           
 void setTargetDataSource(DataSource targetDataSource)
          Set the target DataSource that this DataSource should delegate to.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

logger

protected final Log logger
Logger available to subclasses

Constructor Detail

DelegatingDataSource

public DelegatingDataSource()
Method Detail

setTargetDataSource

public void setTargetDataSource(DataSource targetDataSource)
Set the target DataSource that this DataSource should delegate to.


getTargetDataSource

public DataSource getTargetDataSource()
Return the target DataSource that this DataSource should delegate to.


afterPropertiesSet

public void afterPropertiesSet()
Description copied from interface: InitializingBean
Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware).

This method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.

Specified by:
afterPropertiesSet in interface InitializingBean

getConnection

public Connection getConnection()
                         throws SQLException
Specified by:
getConnection in interface DataSource
Throws:
SQLException

getConnection

public Connection getConnection(String username,
                                String password)
                         throws SQLException
Specified by:
getConnection in interface DataSource
Throws:
SQLException

getLoginTimeout

public int getLoginTimeout()
                    throws SQLException
Specified by:
getLoginTimeout in interface DataSource
Throws:
SQLException

setLoginTimeout

public void setLoginTimeout(int seconds)
                     throws SQLException
Specified by:
setLoginTimeout in interface DataSource
Throws:
SQLException

getLogWriter

public PrintWriter getLogWriter()
                         throws SQLException
Specified by:
getLogWriter in interface DataSource
Throws:
SQLException

setLogWriter

public void setLogWriter(PrintWriter out)
                  throws SQLException
Specified by:
setLogWriter in interface DataSource
Throws:
SQLException


Copyright (C) 2003-2004 The Spring Framework Project.