Class MariaDbDataSource

java.lang.Object
org.mariadb.jdbc.MariaDbDataSource
All Implemented Interfaces:
Wrapper, CommonDataSource, ConnectionPoolDataSource, DataSource, XADataSource

public class MariaDbDataSource extends Object implements DataSource, ConnectionPoolDataSource, XADataSource
MariaDB basic datasource
  • Constructor Details

    • MariaDbDataSource

      public MariaDbDataSource()
      Basic constructor
    • MariaDbDataSource

      public MariaDbDataSource(String url) throws SQLException
      Constructor with URL
      Parameters:
      url - connection string
      Throws:
      SQLException - if url is not supported
  • Method Details

    • getConnection

      public Connection getConnection() throws SQLException
      Attempts to establish a connection with the data source that this DataSource object represents.
      Specified by:
      getConnection in interface DataSource
      Returns:
      a connection to the data source
      Throws:
      SQLException - if a database access error occurs
      SQLTimeoutException - when the driver has determined that the timeout value specified by the setLoginTimeout method has been exceeded and has at least tried to cancel the current database connection attempt
    • getConnection

      public Connection getConnection(String username, String password) throws SQLException
      Attempts to establish a connection with the data source that this DataSource object represents.
      Specified by:
      getConnection in interface DataSource
      Parameters:
      username - the database user on whose behalf the connection is being made
      password - the user's password
      Returns:
      a connection to the data source
      Throws:
      SQLException - if a database access error occurs
      SQLTimeoutException - when the driver has determined that the timeout value specified by the setLoginTimeout method has been exceeded and has at least tried to cancel the current database connection attempt
    • unwrap

      public <T> T unwrap(Class<T> iface) throws SQLException
      Returns an object that implements the given interface to allow access to non-standard methods, or standard methods not exposed by the proxy.

      If the receiver implements the interface then the result is the receiver or a proxy for the receiver. If the receiver is a wrapper and the wrapped object implements the interface then the result is the wrapped object or a proxy for the wrapped object. Otherwise, return the result of calling 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.

      Specified by:
      unwrap in interface Wrapper
      Parameters:
      iface - A Class defining an interface that the result must implement.
      Returns:
      an object that implements the interface. Maybe a proxy for the actual implementing object.
      Throws:
      SQLException - If no object found that implements the interface
    • isWrapperFor

      public 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. Returns false otherwise. If this implements the interface then return true, else if this is a wrapper then return the result of recursively calling 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.
      Specified by:
      isWrapperFor in interface Wrapper
      Parameters:
      iface - a Class defining an interface.
      Returns:
      true if this implements the interface or directly or indirectly wraps an object that does.
    • getLogWriter

      public PrintWriter getLogWriter()
      Implementation doesn't use logwriter
      Specified by:
      getLogWriter in interface CommonDataSource
      Specified by:
      getLogWriter in interface ConnectionPoolDataSource
      Specified by:
      getLogWriter in interface DataSource
      Specified by:
      getLogWriter in interface XADataSource
      Returns:
      the log writer for this data source or null if logging is disabled
      See Also:
    • setLogWriter

      public void setLogWriter(PrintWriter out)
      Implementation doesn't use logwriter
      Specified by:
      setLogWriter in interface CommonDataSource
      Specified by:
      setLogWriter in interface ConnectionPoolDataSource
      Specified by:
      setLogWriter in interface DataSource
      Specified by:
      setLogWriter in interface XADataSource
      Parameters:
      out - the new log writer; to disable logging, set to null
      See Also:
    • getLoginTimeout

      public int getLoginTimeout()
      Gets the maximum time in seconds that this data source can wait while attempting to connect to a database. A value of zero means that the timeout is the default system timeout if there is one; otherwise, it means that there is no timeout. When a DataSource object is created, the login timeout is initially to 30s.
      Specified by:
      getLoginTimeout in interface CommonDataSource
      Specified by:
      getLoginTimeout in interface ConnectionPoolDataSource
      Specified by:
      getLoginTimeout in interface DataSource
      Specified by:
      getLoginTimeout in interface XADataSource
      Returns:
      the data source login time limit
      See Also:
    • setLoginTimeout

      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 30s.
      Specified by:
      setLoginTimeout in interface CommonDataSource
      Specified by:
      setLoginTimeout in interface ConnectionPoolDataSource
      Specified by:
      setLoginTimeout in interface DataSource
      Specified by:
      setLoginTimeout in interface XADataSource
      Parameters:
      seconds - the data source login time limit
      Throws:
      SQLException - if wrong configuration set
      See Also:
    • getParentLogger

      public Logger getParentLogger()
      Not implemented
      Specified by:
      getParentLogger in interface CommonDataSource
      Returns:
      the parent Logger for this data source
    • getPooledConnection

      public PooledConnection getPooledConnection() throws SQLException
      Specified by:
      getPooledConnection in interface ConnectionPoolDataSource
      Throws:
      SQLException
    • getPooledConnection

      public PooledConnection getPooledConnection(String username, String password) throws SQLException
      Specified by:
      getPooledConnection in interface ConnectionPoolDataSource
      Throws:
      SQLException
    • getXAConnection

      public XAConnection getXAConnection() throws SQLException
      Specified by:
      getXAConnection in interface XADataSource
      Throws:
      SQLException
    • getXAConnection

      public XAConnection getXAConnection(String username, String password) throws SQLException
      Specified by:
      getXAConnection in interface XADataSource
      Throws:
      SQLException
    • getUrl

      public String getUrl()
      Returns the URL for this datasource
      Returns:
      the URL for this datasource
    • setUrl

      public void setUrl(String url) throws SQLException
      Sets the URL for this datasource
      Parameters:
      url - connection string
      Throws:
      SQLException - if url is not accepted
    • getUser

      public String getUser()
      get User
      Returns:
      user
    • setUser

      public void setUser(String user) throws SQLException
      Set user
      Parameters:
      user - user
      Throws:
      SQLException - if wrong resulting connection string
    • setPassword

      public void setPassword(String password) throws SQLException
      Set password
      Parameters:
      password - password
      Throws:
      SQLException - if wrong configuration