Class DelegatingDataSource

  • All Implemented Interfaces:
    java.sql.Wrapper, javax.sql.CommonDataSource, javax.sql.DataSource, Closeable
    Direct Known Subclasses:
    DecoratingDataSource

    public class DelegatingDataSource
    extends java.lang.Object
    implements javax.sql.DataSource, Closeable
    Wrapper around an existing data source. Subclasses can override the methods whose behavior they mean to change. The equals and hashCode methods pass through to the base underlying data store.
    Author:
    Abe White
    • Constructor Summary

      Constructors 
      Constructor Description
      DelegatingDataSource​(javax.sql.DataSource ds)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void appendInfo​(java.lang.StringBuffer buf)  
      void close()  
      boolean equals​(java.lang.Object other)  
      java.sql.Connection getConnection()  
      java.sql.Connection getConnection​(java.lang.String user, java.lang.String pass)  
      javax.sql.DataSource getDelegate()
      Return the wrapped data source.
      javax.sql.DataSource getInnermostDelegate()
      Return the inner-most wrapped delegate.
      int getLoginTimeout()  
      java.io.PrintWriter getLogWriter()  
      java.util.logging.Logger getParentLogger()  
      int hashCode()  
      boolean isWrapperFor​(java.lang.Class iface)  
      void setLoginTimeout​(int timeout)  
      void setLogWriter​(java.io.PrintWriter out)  
      java.lang.String toString()  
      java.lang.Object unwrap​(java.lang.Class iface)  
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface javax.sql.CommonDataSource

        createShardingKeyBuilder
      • Methods inherited from interface javax.sql.DataSource

        createConnectionBuilder
    • Constructor Detail

      • DelegatingDataSource

        public DelegatingDataSource​(javax.sql.DataSource ds)
        Constructor. Supply wrapped data source.
    • Method Detail

      • getDelegate

        public javax.sql.DataSource getDelegate()
        Return the wrapped data source.
      • getInnermostDelegate

        public javax.sql.DataSource getInnermostDelegate()
        Return the inner-most wrapped delegate.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • appendInfo

        protected void appendInfo​(java.lang.StringBuffer buf)
      • getLogWriter

        public java.io.PrintWriter getLogWriter()
                                         throws java.sql.SQLException
        Specified by:
        getLogWriter in interface javax.sql.CommonDataSource
        Specified by:
        getLogWriter in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • setLogWriter

        public void setLogWriter​(java.io.PrintWriter out)
                          throws java.sql.SQLException
        Specified by:
        setLogWriter in interface javax.sql.CommonDataSource
        Specified by:
        setLogWriter in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • getLoginTimeout

        public int getLoginTimeout()
                            throws java.sql.SQLException
        Specified by:
        getLoginTimeout in interface javax.sql.CommonDataSource
        Specified by:
        getLoginTimeout in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • setLoginTimeout

        public void setLoginTimeout​(int timeout)
                             throws java.sql.SQLException
        Specified by:
        setLoginTimeout in interface javax.sql.CommonDataSource
        Specified by:
        setLoginTimeout in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • getConnection

        public java.sql.Connection getConnection()
                                          throws java.sql.SQLException
        Specified by:
        getConnection in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • getConnection

        public java.sql.Connection getConnection​(java.lang.String user,
                                                 java.lang.String pass)
                                          throws java.sql.SQLException
        Specified by:
        getConnection in interface javax.sql.DataSource
        Throws:
        java.sql.SQLException
      • close

        public void close()
                   throws java.lang.Exception
        Specified by:
        close in interface Closeable
        Throws:
        java.lang.Exception
      • isWrapperFor

        public boolean isWrapperFor​(java.lang.Class iface)
        Specified by:
        isWrapperFor in interface java.sql.Wrapper
      • unwrap

        public java.lang.Object unwrap​(java.lang.Class iface)
        Specified by:
        unwrap in interface java.sql.Wrapper
      • getParentLogger

        public java.util.logging.Logger getParentLogger()
                                                 throws java.sql.SQLFeatureNotSupportedException
        Specified by:
        getParentLogger in interface javax.sql.CommonDataSource
        Throws:
        java.sql.SQLFeatureNotSupportedException