org.apache.cayenne.datasource

## Class DriverDataSource

- java.lang.Object
- - org.apache.cayenne.datasource.DriverDataSource

- All Implemented Interfaces:
    Wrapper, CommonDataSource, DataSource

      public class DriverDataSource
      extends Object
      implements DataSource

  A non-pooling DataSource implementation wrapping a JDBC driver.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `connectionUrl`
    `protected Driver` | `driver`
    `protected String` | `password`
    `protected String` | `userName`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DriverDataSource(Driver driver, String connectionUrl, String userName, String password)` Creates a DriverDataSource wrapping a given Driver.
    `DriverDataSource(String driverClassName, String connectionUrl)` Deprecated. since 4.0 as class loading should not happen here. Use { `DriverDataSource(Driver, String, String, String)`.
    `DriverDataSource(String driverClassName, String connectionUrl, String userName, String password)` Deprecated. since 4.0 as class loading should not happen here. Use `DriverDataSource(Driver, String, String, String)`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `Connection` | `getConnection()` Returns a new database connection, using preconfigured data to locate the database and obtain a connection.
    `Connection` | `getConnection(String userName, String password)` Returns a new database connection using provided credentials to login to the database.
    `String` | `getConnectionUrl()` Deprecated. since 4.0. Connection parameters are immutable and not readable.
    `int` | `getLoginTimeout()`
    `PrintWriter` | `getLogWriter()`
    `Logger` | `getParentLogger()`
    `String` | `getPassword()` Deprecated. since 4.0. Connection parameters are immutable and not readable.
    `String` | `getUserName()` Deprecated. since 4.0. Connection parameters are immutable and not readable.
    `boolean` | `isWrapperFor(Class<?> iface)`
    `void` | `setConnectionUrl(String connectionUrl)` Deprecated. since 4.0. Connection parameters are immutable.
    `void` | `setLoginTimeout(int seconds)`
    `void` | `setLogWriter(PrintWriter out)`
    `void` | `setPassword(String password)` Deprecated. since 4.0. Connection parameters are immutable.
    `void` | `setUserName(String userName)` Deprecated. since 4.0. Connection parameters are immutable.
    `<T> T` | `unwrap(Class<T> iface)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### driver

          protected Driver driver

    - #### connectionUrl

          protected String connectionUrl

    - #### userName

          protected String userName

    - #### password

          protected String password

  - ### Constructor Detail

    - #### DriverDataSource

          @Deprecated
          public DriverDataSource(String driverClassName,
                                               String connectionUrl)

      Deprecated. since 4.0 as class loading should not happen here. Use { `DriverDataSource(Driver, String, String, String)`.
      Creates a new DriverDataSource. If "driverClassName" is null, DriverDataSource will consult DriverManager for a registered driver for the given URL. So when specifying null, a user must take care of registering the driver. "connectionUrl" on the other hand must NOT be null.

    - #### DriverDataSource

          @Deprecated
          public DriverDataSource(String driverClassName,
                                               String connectionUrl,
                                               String userName,
                                               String password)

      Deprecated. since 4.0 as class loading should not happen here. Use `DriverDataSource(Driver, String, String, String)`.
      Creates a new DriverDataSource. If "driverClassName" is null, DriverDataSource will consult DriverManager for a registered driver for the given URL. So when specifying null, a user must take care of registering the driver. "connectionUrl" on the other hand must NOT be null.

    - #### DriverDataSource

          public DriverDataSource(Driver driver,
                                  String connectionUrl,
                                  String userName,
                                  String password)

      Creates a DriverDataSource wrapping a given Driver. If "driver" is null, DriverDataSource will consult DriverManager for a registered driver for the given URL. So when specifying null, a user must take care of registering the driver. "connectionUrl" on the other hand must NOT be null.
      Since:
        1.1

  - ### Method Detail

    - #### getConnection

          public Connection getConnection()
                                   throws SQLException

      Returns a new database connection, using preconfigured data to locate the database and obtain a connection.
      Specified by:
        `getConnection` in interface `DataSource`
      Throws:
        `SQLException`

    - #### getConnection

          public Connection getConnection(String userName,
                                          String password)
                                   throws SQLException

      Returns a new database connection using provided credentials to login to the database.
      Specified by:
        `getConnection` in interface `DataSource`
      Throws:
        `SQLException`

    - #### getLoginTimeout

          public int getLoginTimeout()
                              throws SQLException

      Specified by:
        `getLoginTimeout` in interface `CommonDataSource`
      Throws:
        `SQLException`

    - #### setLoginTimeout

          public void setLoginTimeout(int seconds)
                               throws SQLException

      Specified by:
        `setLoginTimeout` in interface `CommonDataSource`
      Throws:
        `SQLException`

    - #### getLogWriter

          public PrintWriter getLogWriter()
                                   throws SQLException

      Specified by:
        `getLogWriter` in interface `CommonDataSource`
      Throws:
        `SQLException`

    - #### setLogWriter

          public void setLogWriter(PrintWriter out)
                            throws SQLException

      Specified by:
        `setLogWriter` in interface `CommonDataSource`
      Throws:
        `SQLException`

    - #### getConnectionUrl

          @Deprecated
          public String getConnectionUrl()

      Deprecated. since 4.0. Connection parameters are immutable and not readable.
      Since:
        3.0

    - #### setConnectionUrl

          @Deprecated
          public void setConnectionUrl(String connectionUrl)

      Deprecated. since 4.0. Connection parameters are immutable.
      Since:
        3.0

    - #### getPassword

          @Deprecated
          public String getPassword()

      Deprecated. since 4.0. Connection parameters are immutable and not readable.
      Since:
        3.0

    - #### setPassword

          @Deprecated
          public void setPassword(String password)

      Deprecated. since 4.0. Connection parameters are immutable.
      Since:
        3.0

    - #### getUserName

          @Deprecated
          public String getUserName()

      Deprecated. since 4.0. Connection parameters are immutable and not readable.
      Since:
        3.0

    - #### setUserName

          @Deprecated
          public void setUserName(String userName)

      Deprecated. since 4.0. Connection parameters are immutable.
      Since:
        3.0

    - #### isWrapperFor

          public boolean isWrapperFor(Class<?> iface)
                               throws SQLException

      Specified by:
        `isWrapperFor` in interface `Wrapper`
      Throws:
        `SQLException`
      Since:
        3.0

    - #### unwrap

          public <T> T unwrap(Class<T> iface)
                       throws SQLException

      Specified by:
        `unwrap` in interface `Wrapper`
      Throws:
        `SQLException`
      Since:
        3.0

    - #### getParentLogger

          public Logger getParentLogger()
                                 throws SQLFeatureNotSupportedException

      Specified by:
        `getParentLogger` in interface `CommonDataSource`
      Throws:
        `SQLFeatureNotSupportedException`
      Since:
        3.1

Copyright © 2001–2023 Apache Cayenne. All rights reserved.