code: public Connection getConnection() throws SQLException {
  		Connection connection = this.pool.getConnection();
  
  		// set the Transaction Isolation if defined
  		try {
  			// set the Transaction Isolation if defined
  			if ((this.isolation != null) && (connection.getTransactionIsolation() != this.isolation.intValue())) {
  				connection.setTransactionIsolation (this.isolation.intValue());
  			}
  
  			// toggle autoCommit to false if set
  			if ( connection.getAutoCommit() != this.autocommit ){
  				connection.setAutoCommit(this.autocommit);
  			}
  
  			return connection;
  		} catch (SQLException e){
  			try {
  				connection.close();
  			} catch (Exception e2) {
  				logger.warn("Setting connection properties failed and closing this connection failed again", e);
  			}
  
  			throw e;
  		}
  	}
docs: {@inheritDoc}
  
  @see org.hibernate.engine.jdbc.connections.spi.ConnectionProvider#getConnection()