package org.orbeon.oxf.processor.sql.delegates; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import oracle.jdbc.OraclePreparedStatement; import oracle.jdbc.OracleResultSet; import org.jboss.resource.adapter.jdbc.jdk5.WrappedPreparedStatementJDK5; import org.jboss.resource.adapter.jdbc.jdk5.WrappedResultSetJDK5; import org.orbeon.oxf.processor.sql.DatabaseDelegate; import org.orbeon.oxf.processor.sql.SQLProcessorOracleDelegateBase; public class SQLProcessorOracleJBossDelegate extends SQLProcessorOracleDelegateBase implements DatabaseDelegate { protected OraclePreparedStatement getOraclePreparedStatement(PreparedStatement stmt) { if (stmt instanceof OraclePreparedStatement) return (OraclePreparedStatement) stmt; else { PreparedStatement preparedStatement; try { preparedStatement = ((WrappedPreparedStatementJDK5) stmt).getUnderlyingStatement(); return (OraclePreparedStatement) preparedStatement; } catch (SQLException e) { // e.printStackTrace(); } return null; } } protected OracleResultSet getOracleResultSet(ResultSet resultSet) { if (resultSet instanceof OracleResultSet) return (OracleResultSet) resultSet; else try { return (OracleResultSet) ((WrappedResultSetJDK5) resultSet).getUnderlyingResultSet(); } catch (SQLException e) { // e.printStackTrace(); } return null; } }