org.jboss.jca.adapters.jdbc
Class CachedPreparedStatement

java.lang.Object
  extended by org.jboss.jca.adapters.jdbc.JBossWrapper
      extended by org.jboss.jca.adapters.jdbc.CachedPreparedStatement
All Implemented Interfaces:
Serializable, PreparedStatement, Statement, Wrapper
Direct Known Subclasses:
CachedCallableStatement, CachedPreparedStatementJDK6, CachedPreparedStatementJDK7

public abstract class CachedPreparedStatement
extends JBossWrapper
implements PreparedStatement

Wrapper class for cached PreparedStatements. Keeps a refcount. When this refcount reaches 0, it will close ps.

Version:
$Revision: 84265 $
Author:
Bill Burke, Adrian Brock
See Also:
Serialized Form

Field Summary
protected static org.jboss.logging.Logger log
           
protected static boolean trace
           
 
Fields inherited from interface java.sql.Statement
CLOSE_ALL_RESULTS, CLOSE_CURRENT_RESULT, EXECUTE_FAILED, KEEP_CURRENT_RESULT, NO_GENERATED_KEYS, RETURN_GENERATED_KEYS, SUCCESS_NO_INFO
 
Constructor Summary
CachedPreparedStatement(PreparedStatement ps)
          Constructor
 
Method Summary
 void addBatch()
          
 void addBatch(String sql)
          
 void agedOut()
          Age out
 void cancel()
          
 void clearBatch()
          
 void clearParameters()
          
 void clearWarnings()
          
 void close()
          Close
 boolean execute()
          
 boolean execute(String sql)
          
 boolean execute(String sql, int autoGeneratedKeys)
          
 boolean execute(String sql, int[] columnIndexes)
          
 boolean execute(String sql, String[] columnNames)
          
 int[] executeBatch()
          
 ResultSet executeQuery()
          
 ResultSet executeQuery(String sql)
          
 int executeUpdate()
          
 int executeUpdate(String sql)
          
 int executeUpdate(String sql, int autoGeneratedKeys)
          
 int executeUpdate(String sql, int[] columnIndexes)
          
 int executeUpdate(String sql, String[] columnNames)
          
 Connection getConnection()
          
 int getFetchDirection()
          
 int getFetchSize()
          
 ResultSet getGeneratedKeys()
          
 int getMaxFieldSize()
          
 int getMaxRows()
          
 ResultSetMetaData getMetaData()
          
 boolean getMoreResults()
          
 boolean getMoreResults(int current)
          
 ParameterMetaData getParameterMetaData()
          
 int getQueryTimeout()
          
 ResultSet getResultSet()
          
 int getResultSetConcurrency()
          
 int getResultSetHoldability()
          
 int getResultSetType()
          
 PreparedStatement getUnderlyingPreparedStatement()
          
 int getUpdateCount()
          
 SQLWarning getWarnings()
          
protected  PreparedStatement getWrappedObject()
          Get the wrapped object - override in sub-classes
 void inUse()
          Increate inUse counter
 boolean isInUse()
          Is in use
 void setArray(int i, Array x)
          
 void setAsciiStream(int parameterIndex, InputStream x, int length)
          
 void setBigDecimal(int parameterIndex, BigDecimal x)
          
 void setBinaryStream(int parameterIndex, InputStream x, int length)
          
 void setBlob(int i, Blob x)
          
 void setBoolean(int parameterIndex, boolean x)
          
 void setByte(int parameterIndex, byte x)
          
 void setBytes(int parameterIndex, byte[] x)
          
 void setCharacterStream(int parameterIndex, Reader reader, int length)
          
 void setClob(int i, Clob x)
          
 void setCursorName(String name)
          
 void setDate(int parameterIndex, Date x)
          
 void setDate(int parameterIndex, Date x, Calendar cal)
          
 void setDouble(int parameterIndex, double x)
          
 void setEscapeProcessing(boolean enable)
          
 void setFetchDirection(int direction)
          
 void setFetchSize(int rows)
          
 void setFloat(int parameterIndex, float x)
          
 void setInt(int parameterIndex, int x)
          
 void setLong(int parameterIndex, long x)
          
 void setMaxFieldSize(int max)
          
 void setMaxRows(int max)
          
 void setNull(int parameterIndex, int sqlType)
          
 void setNull(int paramIndex, int sqlType, String typeName)
          
 void setObject(int parameterIndex, Object x)
          
 void setObject(int parameterIndex, Object x, int targetSqlType)
          
 void setObject(int parameterIndex, Object x, int targetSqlType, int scale)
          
 void setQueryTimeout(int seconds)
          
 void setRef(int i, Ref x)
          
 void setShort(int parameterIndex, short x)
          
 void setString(int parameterIndex, String x)
          
 void setTime(int parameterIndex, Time x)
          
 void setTime(int parameterIndex, Time x, Calendar cal)
          
 void setTimestamp(int parameterIndex, Timestamp x)
          
 void setTimestamp(int parameterIndex, Timestamp x, Calendar cal)
          
 void setUnicodeStream(int parameterIndex, InputStream x, int length)
          Deprecated. 
 void setURL(int parameterIndex, URL x)
          
 
Methods inherited from class org.jboss.jca.adapters.jdbc.JBossWrapper
isWrapperFor, unwrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.sql.PreparedStatement
setAsciiStream, setAsciiStream, setBinaryStream, setBinaryStream, setBlob, setBlob, setCharacterStream, setCharacterStream, setClob, setClob, setNCharacterStream, setNCharacterStream, setNClob, setNClob, setNClob, setNString, setRowId, setSQLXML
 
Methods inherited from interface java.sql.Statement
isClosed, isPoolable, setPoolable
 
Methods inherited from interface java.sql.Wrapper
isWrapperFor, unwrap
 

Field Detail

log

protected static org.jboss.logging.Logger log

trace

protected static boolean trace
Constructor Detail

CachedPreparedStatement

public CachedPreparedStatement(PreparedStatement ps)
                        throws SQLException
Constructor

Parameters:
ps - The prepared statement
Throws:
SQLException - Thrown if an error occurs
Method Detail

getUnderlyingPreparedStatement

public PreparedStatement getUnderlyingPreparedStatement()


executeQuery

public ResultSet executeQuery()
                       throws SQLException

Specified by:
executeQuery in interface PreparedStatement
Throws:
SQLException

executeUpdate

public int executeUpdate()
                  throws SQLException

Specified by:
executeUpdate in interface PreparedStatement
Throws:
SQLException

setNull

public void setNull(int parameterIndex,
                    int sqlType)
             throws SQLException

Specified by:
setNull in interface PreparedStatement
Throws:
SQLException

setBoolean

public void setBoolean(int parameterIndex,
                       boolean x)
                throws SQLException

Specified by:
setBoolean in interface PreparedStatement
Throws:
SQLException

setByte

public void setByte(int parameterIndex,
                    byte x)
             throws SQLException

Specified by:
setByte in interface PreparedStatement
Throws:
SQLException

setShort

public void setShort(int parameterIndex,
                     short x)
              throws SQLException

Specified by:
setShort in interface PreparedStatement
Throws:
SQLException

setInt

public void setInt(int parameterIndex,
                   int x)
            throws SQLException

Specified by:
setInt in interface PreparedStatement
Throws:
SQLException

setLong

public void setLong(int parameterIndex,
                    long x)
             throws SQLException

Specified by:
setLong in interface PreparedStatement
Throws:
SQLException

setFloat

public void setFloat(int parameterIndex,
                     float x)
              throws SQLException

Specified by:
setFloat in interface PreparedStatement
Throws:
SQLException

setDouble

public void setDouble(int parameterIndex,
                      double x)
               throws SQLException

Specified by:
setDouble in interface PreparedStatement
Throws:
SQLException

setBigDecimal

public void setBigDecimal(int parameterIndex,
                          BigDecimal x)
                   throws SQLException

Specified by:
setBigDecimal in interface PreparedStatement
Throws:
SQLException

setString

public void setString(int parameterIndex,
                      String x)
               throws SQLException

Specified by:
setString in interface PreparedStatement
Throws:
SQLException

setBytes

public void setBytes(int parameterIndex,
                     byte[] x)
              throws SQLException

Specified by:
setBytes in interface PreparedStatement
Throws:
SQLException

setDate

public void setDate(int parameterIndex,
                    Date x)
             throws SQLException

Specified by:
setDate in interface PreparedStatement
Throws:
SQLException

setTime

public void setTime(int parameterIndex,
                    Time x)
             throws SQLException

Specified by:
setTime in interface PreparedStatement
Throws:
SQLException

setTimestamp

public void setTimestamp(int parameterIndex,
                         Timestamp x)
                  throws SQLException

Specified by:
setTimestamp in interface PreparedStatement
Throws:
SQLException

setAsciiStream

public void setAsciiStream(int parameterIndex,
                           InputStream x,
                           int length)
                    throws SQLException

Specified by:
setAsciiStream in interface PreparedStatement
Throws:
SQLException

setUnicodeStream

@Deprecated
public void setUnicodeStream(int parameterIndex,
                                        InputStream x,
                                        int length)
                      throws SQLException
Deprecated. 

Specified by:
setUnicodeStream in interface PreparedStatement
Throws:
SQLException

setBinaryStream

public void setBinaryStream(int parameterIndex,
                            InputStream x,
                            int length)
                     throws SQLException

Specified by:
setBinaryStream in interface PreparedStatement
Throws:
SQLException

clearParameters

public void clearParameters()
                     throws SQLException

Specified by:
clearParameters in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x,
                      int targetSqlType,
                      int scale)
               throws SQLException

Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x,
                      int targetSqlType)
               throws SQLException

Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

setObject

public void setObject(int parameterIndex,
                      Object x)
               throws SQLException

Specified by:
setObject in interface PreparedStatement
Throws:
SQLException

execute

public boolean execute()
                throws SQLException

Specified by:
execute in interface PreparedStatement
Throws:
SQLException

addBatch

public void addBatch()
              throws SQLException

Specified by:
addBatch in interface PreparedStatement
Throws:
SQLException

setCharacterStream

public void setCharacterStream(int parameterIndex,
                               Reader reader,
                               int length)
                        throws SQLException

Specified by:
setCharacterStream in interface PreparedStatement
Throws:
SQLException

setRef

public void setRef(int i,
                   Ref x)
            throws SQLException

Specified by:
setRef in interface PreparedStatement
Throws:
SQLException

setBlob

public void setBlob(int i,
                    Blob x)
             throws SQLException

Specified by:
setBlob in interface PreparedStatement
Throws:
SQLException

setClob

public void setClob(int i,
                    Clob x)
             throws SQLException

Specified by:
setClob in interface PreparedStatement
Throws:
SQLException

setArray

public void setArray(int i,
                     Array x)
              throws SQLException

Specified by:
setArray in interface PreparedStatement
Throws:
SQLException

getMetaData

public ResultSetMetaData getMetaData()
                              throws SQLException

Specified by:
getMetaData in interface PreparedStatement
Throws:
SQLException

setDate

public void setDate(int parameterIndex,
                    Date x,
                    Calendar cal)
             throws SQLException

Specified by:
setDate in interface PreparedStatement
Throws:
SQLException

setTime

public void setTime(int parameterIndex,
                    Time x,
                    Calendar cal)
             throws SQLException

Specified by:
setTime in interface PreparedStatement
Throws:
SQLException

setTimestamp

public void setTimestamp(int parameterIndex,
                         Timestamp x,
                         Calendar cal)
                  throws SQLException

Specified by:
setTimestamp in interface PreparedStatement
Throws:
SQLException

setNull

public void setNull(int paramIndex,
                    int sqlType,
                    String typeName)
             throws SQLException

Specified by:
setNull in interface PreparedStatement
Throws:
SQLException

setURL

public void setURL(int parameterIndex,
                   URL x)
            throws SQLException

Specified by:
setURL in interface PreparedStatement
Throws:
SQLException

getParameterMetaData

public ParameterMetaData getParameterMetaData()
                                       throws SQLException

Specified by:
getParameterMetaData in interface PreparedStatement
Throws:
SQLException

executeQuery

public ResultSet executeQuery(String sql)
                       throws SQLException

Specified by:
executeQuery in interface Statement
Throws:
SQLException

executeUpdate

public int executeUpdate(String sql)
                  throws SQLException

Specified by:
executeUpdate in interface Statement
Throws:
SQLException

isInUse

public boolean isInUse()
Is in use

Returns:
True if being used; false otherwise

inUse

public void inUse()
Increate inUse counter


agedOut

public void agedOut()
             throws SQLException
Age out

Throws:
SQLException - Thrown if an error occurs

close

public void close()
           throws SQLException
Close

Specified by:
close in interface Statement
Throws:
SQLException - Thrown if an error occurs

getMaxFieldSize

public int getMaxFieldSize()
                    throws SQLException

Specified by:
getMaxFieldSize in interface Statement
Throws:
SQLException

setMaxFieldSize

public void setMaxFieldSize(int max)
                     throws SQLException

Specified by:
setMaxFieldSize in interface Statement
Throws:
SQLException

getMaxRows

public int getMaxRows()
               throws SQLException

Specified by:
getMaxRows in interface Statement
Throws:
SQLException

setMaxRows

public void setMaxRows(int max)
                throws SQLException

Specified by:
setMaxRows in interface Statement
Throws:
SQLException

setEscapeProcessing

public void setEscapeProcessing(boolean enable)
                         throws SQLException

Specified by:
setEscapeProcessing in interface Statement
Throws:
SQLException

getQueryTimeout

public int getQueryTimeout()
                    throws SQLException

Specified by:
getQueryTimeout in interface Statement
Throws:
SQLException

setQueryTimeout

public void setQueryTimeout(int seconds)
                     throws SQLException

Specified by:
setQueryTimeout in interface Statement
Throws:
SQLException

cancel

public void cancel()
            throws SQLException

Specified by:
cancel in interface Statement
Throws:
SQLException

getWarnings

public SQLWarning getWarnings()
                       throws SQLException

Specified by:
getWarnings in interface Statement
Throws:
SQLException

clearWarnings

public void clearWarnings()
                   throws SQLException

Specified by:
clearWarnings in interface Statement
Throws:
SQLException

setCursorName

public void setCursorName(String name)
                   throws SQLException

Specified by:
setCursorName in interface Statement
Throws:
SQLException

execute

public boolean execute(String sql)
                throws SQLException

Specified by:
execute in interface Statement
Throws:
SQLException

getResultSet

public ResultSet getResultSet()
                       throws SQLException

Specified by:
getResultSet in interface Statement
Throws:
SQLException

getUpdateCount

public int getUpdateCount()
                   throws SQLException

Specified by:
getUpdateCount in interface Statement
Throws:
SQLException

getMoreResults

public boolean getMoreResults()
                       throws SQLException

Specified by:
getMoreResults in interface Statement
Throws:
SQLException

setFetchDirection

public void setFetchDirection(int direction)
                       throws SQLException

Specified by:
setFetchDirection in interface Statement
Throws:
SQLException

getFetchDirection

public int getFetchDirection()
                      throws SQLException

Specified by:
getFetchDirection in interface Statement
Throws:
SQLException

setFetchSize

public void setFetchSize(int rows)
                  throws SQLException

Specified by:
setFetchSize in interface Statement
Throws:
SQLException

getFetchSize

public int getFetchSize()
                 throws SQLException

Specified by:
getFetchSize in interface Statement
Throws:
SQLException

getResultSetConcurrency

public int getResultSetConcurrency()
                            throws SQLException

Specified by:
getResultSetConcurrency in interface Statement
Throws:
SQLException

getResultSetType

public int getResultSetType()
                     throws SQLException

Specified by:
getResultSetType in interface Statement
Throws:
SQLException

addBatch

public void addBatch(String sql)
              throws SQLException

Specified by:
addBatch in interface Statement
Throws:
SQLException

clearBatch

public void clearBatch()
                throws SQLException

Specified by:
clearBatch in interface Statement
Throws:
SQLException

executeBatch

public int[] executeBatch()
                   throws SQLException

Specified by:
executeBatch in interface Statement
Throws:
SQLException

getConnection

public Connection getConnection()
                         throws SQLException

Specified by:
getConnection in interface Statement
Throws:
SQLException

getMoreResults

public boolean getMoreResults(int current)
                       throws SQLException

Specified by:
getMoreResults in interface Statement
Throws:
SQLException

getGeneratedKeys

public ResultSet getGeneratedKeys()
                           throws SQLException

Specified by:
getGeneratedKeys in interface Statement
Throws:
SQLException

executeUpdate

public int executeUpdate(String sql,
                         int autoGeneratedKeys)
                  throws SQLException

Specified by:
executeUpdate in interface Statement
Throws:
SQLException

executeUpdate

public int executeUpdate(String sql,
                         int[] columnIndexes)
                  throws SQLException

Specified by:
executeUpdate in interface Statement
Throws:
SQLException

executeUpdate

public int executeUpdate(String sql,
                         String[] columnNames)
                  throws SQLException

Specified by:
executeUpdate in interface Statement
Throws:
SQLException

execute

public boolean execute(String sql,
                       int autoGeneratedKeys)
                throws SQLException

Specified by:
execute in interface Statement
Throws:
SQLException

execute

public boolean execute(String sql,
                       int[] columnIndexes)
                throws SQLException

Specified by:
execute in interface Statement
Throws:
SQLException

execute

public boolean execute(String sql,
                       String[] columnNames)
                throws SQLException

Specified by:
execute in interface Statement
Throws:
SQLException

getResultSetHoldability

public int getResultSetHoldability()
                            throws SQLException

Specified by:
getResultSetHoldability in interface Statement
Throws:
SQLException

getWrappedObject

protected PreparedStatement getWrappedObject()
                                      throws SQLException
Get the wrapped object - override in sub-classes

Overrides:
getWrappedObject in class JBossWrapper
Returns:
The object
Throws:
SQLException - Thrown if an error occurs


Copyright © 2012 JBoss, by Red Hat (http://www.jboss.org/ironjacamar)