Example usage for org.springframework.jca.cci.connection ConnectionFactoryUtils releaseConnection

List of usage examples for org.springframework.jca.cci.connection ConnectionFactoryUtils releaseConnection

Introduction

In this page you can find the example usage for org.springframework.jca.cci.connection ConnectionFactoryUtils releaseConnection.

Prototype

public static void releaseConnection(@Nullable Connection con, @Nullable ConnectionFactory cf) 

Source Link

Document

Close the given Connection, obtained from the given ConnectionFactory, if it is not managed externally (that is, not bound to the thread).

Usage

From source file:org.springframework.jca.cci.core.CciTemplate.java

@Override
@Nullable/* ww  w  .jav a 2 s . c om*/
public <T> T execute(ConnectionCallback<T> action) throws DataAccessException {
    Assert.notNull(action, "Callback object must not be null");
    ConnectionFactory connectionFactory = obtainConnectionFactory();
    Connection con = ConnectionFactoryUtils.getConnection(connectionFactory, getConnectionSpec());
    try {
        return action.doInConnection(con, connectionFactory);
    } catch (NotSupportedException ex) {
        throw new CciOperationNotSupportedException("CCI operation not supported by connector", ex);
    } catch (ResourceException ex) {
        throw new DataAccessResourceFailureException("CCI operation failed", ex);
    } catch (SQLException ex) {
        throw new InvalidResultSetAccessException("Parsing of CCI ResultSet failed", ex);
    } finally {
        ConnectionFactoryUtils.releaseConnection(con, getConnectionFactory());
    }
}