# Class MariaDbPooledConnection

java.lang.Object
org.mariadb.jdbc.MariaDbPooledConnection

All Implemented Interfaces:
  `PooledConnection`

Direct Known Subclasses:
  `MariaXaConnection`

public class MariaDbPooledConnection extends Object implements PooledConnection

## Constructor Summary

Constructors
Constructor
Description
`MariaDbPooledConnection(MariaDbConnection connection)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`void`
`abort(Executor executor)`
Abort connection.
`void`
`addConnectionEventListener(ConnectionEventListener listener)`
Registers the given event failover so that it will be notified when an event occurs on this `PooledConnection` object.
`void`
`addStatementEventListener(StatementEventListener listener)`
Registers a `StatementEventListener` with this `PooledConnection` object.
`void`
`close()`
Closes the physical connection that this `PooledConnection` object represents.
`void`
`ensureValidation()`
`void`
`fireConnectionClosed()`
Fire Connection close to listening listeners.
`void`
`fireConnectionErrorOccurred(SQLException ex)`
Fire connection error to listening listeners.
`void`
`fireStatementClosed(Statement st)`
Fire statement close event to listeners.
`void`
`fireStatementErrorOccurred(Statement st, SQLException ex)`
Fire statement error to listeners.
`MariaDbConnection`
`getConnection()`
Creates and returns a `Connection` object that is a handle for the physical connection that this `PooledConnection` object represents.
`AtomicLong`
`getLastUsed()`
Indicate last time this pool connection has been used.
`void`
`lastUsedToNow()`
Set last poolConnection use to now.
`boolean`
`noStmtEventListeners()`
Indicate if there are any registered listener.
`void`
`removeConnectionEventListener(ConnectionEventListener listener)`
Removes the given event failover from the list of components that will be notified when an event occurs on this `PooledConnection` object.
`void`
`removeStatementEventListener(StatementEventListener listener)`
Removes the specified `StatementEventListener` from the list of components that will be notified when the driver detects that a `PreparedStatement` has been closed or is invalid.

### Methods inherited from class Object

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

## Constructor Details

### MariaDbPooledConnection

public MariaDbPooledConnection(MariaDbConnection connection)
Constructor.

Parameters:
  `connection` - connection to retrieve connection options

## Method Details

### getConnection

public MariaDbConnection getConnection()
Creates and returns a `Connection` object that is a handle for the physical connection that this `PooledConnection` object represents. The connection pool manager calls this method when an application has called the method `DataSource.getConnection` and there are no `PooledConnection` objects available. See the `interface description` for more information.

Specified by:
  `getConnection` in interface `PooledConnection`
Returns:
  a `Connection` object that is a handle to this `PooledConnection` object

### close

public void close() throws SQLException
Closes the physical connection that this `PooledConnection` object represents. An application never calls this method directly; it is called by the connection pool module, or manager.
See the `interface description` for more information.

Specified by:
  `close` in interface `PooledConnection`
Throws:
  `SQLException` - if a database access error occurs

### abort

public void abort(Executor executor) throws SQLException
Abort connection.

Parameters:
  `executor` - executor
Throws:
  `SQLException` - if a database access error occurs

### addConnectionEventListener

public void addConnectionEventListener(ConnectionEventListener listener)
Registers the given event failover so that it will be notified when an event occurs on this `PooledConnection` object.

Specified by:
  `addConnectionEventListener` in interface `PooledConnection`
Parameters:
  `listener` - a component, usually the connection pool manager, that has implemented the `ConnectionEventListener` interface and wants to be notified when the connection is closed or has an error
See Also:
  - `removeConnectionEventListener(ConnectionEventListener)`

### removeConnectionEventListener

public void removeConnectionEventListener(ConnectionEventListener listener)
Removes the given event failover from the list of components that will be notified when an event occurs on this `PooledConnection` object.

Specified by:
  `removeConnectionEventListener` in interface `PooledConnection`
Parameters:
  `listener` - a component, usually the connection pool manager, that has implemented the `ConnectionEventListener` interface and been registered with this `PooledConnection` object as a failover
See Also:
  - `addConnectionEventListener(ConnectionEventListener)`

### addStatementEventListener

public void addStatementEventListener(StatementEventListener listener)
Registers a `StatementEventListener` with this `PooledConnection` object. Components that wish to be notified when `PreparedStatement`s created by the connection are closed or are detected to be invalid may use this method to register a `StatementEventListener` with this `PooledConnection` object.

Specified by:
  `addStatementEventListener` in interface `PooledConnection`
Parameters:
  `listener` - an component which implements the `StatementEventListener` interface that is to be registered with this `PooledConnection` object

### removeStatementEventListener

public void removeStatementEventListener(StatementEventListener listener)
Removes the specified `StatementEventListener` from the list of components that will be notified when the driver detects that a `PreparedStatement` has been closed or is invalid.

Specified by:
  `removeStatementEventListener` in interface `PooledConnection`
Parameters:
  `listener` - the component which implements the `StatementEventListener` interface that was previously registered with this `PooledConnection` object

### fireStatementClosed

public void fireStatementClosed(Statement st)
Fire statement close event to listeners.

Parameters:
  `st` - statement

### fireStatementErrorOccurred

public void fireStatementErrorOccurred(Statement st, SQLException ex)
Fire statement error to listeners.

Parameters:
  `st` - statement
  `ex` - exception

### fireConnectionClosed

public void fireConnectionClosed()
Fire Connection close to listening listeners.

### fireConnectionErrorOccurred

public void fireConnectionErrorOccurred(SQLException ex)
Fire connection error to listening listeners.

Parameters:
  `ex` - exception

### noStmtEventListeners

public boolean noStmtEventListeners()
Indicate if there are any registered listener.

Returns:
  true if no listener.

### getLastUsed

public AtomicLong getLastUsed()
Indicate last time this pool connection has been used.

Returns:
  current last used time (nano).

### lastUsedToNow

public void lastUsedToNow()
Set last poolConnection use to now.

### ensureValidation

public void ensureValidation()