org.jboss.minerva.jdbc
Class StatementInPool

java.lang.Object
  |
  +--org.jboss.minerva.jdbc.StatementInPool
All Implemented Interfaces:
java.sql.Statement
Direct Known Subclasses:
PreparedStatementInPool

public class StatementInPool
extends java.lang.Object
implements java.sql.Statement

Wraps a Statement to track errors and the last used time for the owning connection. That time is updated every time a SQL action is performed (executeQuery, executeUpdate, etc.).

Version:
$Revision: 1.2 $
Author:
Aaron Mulder (ammulder@alumni.princeton.edu)

Constructor Summary
StatementInPool(java.sql.Statement source, ConnectionWrapper owner)
          Creates a new statement from a source statement and wrapper connection.
 
Method Summary
 void addBatch(java.lang.String arg0)
           
 void cancel()
           
 void clearBatch()
           
protected  void clearFields()
           
 void clearWarnings()
           
 void close()
           
 boolean execute(java.lang.String arg0)
           
 int[] executeBatch()
           
 java.sql.ResultSet executeQuery(java.lang.String arg0)
           
 int executeUpdate(java.lang.String arg0)
           
 java.sql.Connection getConnection()
           
 int getFetchDirection()
           
 int getFetchSize()
           
 int getMaxFieldSize()
           
 int getMaxRows()
           
 boolean getMoreResults()
           
 int getQueryTimeout()
           
 java.sql.ResultSet getResultSet()
           
 int getResultSetConcurrency()
           
 int getResultSetType()
           
 java.sql.Statement getUnderlyingStatement()
          Gets a reference to the "real" Statement.
 int getUpdateCount()
           
 java.sql.SQLWarning getWarnings()
           
 void setCursorName(java.lang.String arg0)
           
 void setError(java.sql.SQLException e)
          Indicates that an error occured on the owning connection.
 void setEscapeProcessing(boolean arg0)
           
 void setFetchDirection(int arg0)
           
 void setFetchSize(int arg0)
           
 void setLastUsed()
          Updates the last used time for the owning connection to the current time.
 void setMaxFieldSize(int arg0)
           
 void setMaxRows(int arg0)
           
 void setQueryTimeout(int arg0)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StatementInPool

public StatementInPool(java.sql.Statement source,
                       ConnectionWrapper owner)
Creates a new statement from a source statement and wrapper connection.
Method Detail

setLastUsed

public void setLastUsed()
Updates the last used time for the owning connection to the current time.

setError

public void setError(java.sql.SQLException e)
Indicates that an error occured on the owning connection.

getUnderlyingStatement

public java.sql.Statement getUnderlyingStatement()
Gets a reference to the "real" Statement. This should only be used if you need to cast that to a specific type to call a proprietary method - you will defeat all the pooling if you use the underlying Statement directly.

addBatch

public void addBatch(java.lang.String arg0)
              throws java.sql.SQLException
Specified by:
addBatch in interface java.sql.Statement

cancel

public void cancel()
            throws java.sql.SQLException
Specified by:
cancel in interface java.sql.Statement

clearBatch

public void clearBatch()
                throws java.sql.SQLException
Specified by:
clearBatch in interface java.sql.Statement

clearWarnings

public void clearWarnings()
                   throws java.sql.SQLException
Specified by:
clearWarnings in interface java.sql.Statement

close

public void close()
           throws java.sql.SQLException
Specified by:
close in interface java.sql.Statement

clearFields

protected void clearFields()

execute

public boolean execute(java.lang.String arg0)
                throws java.sql.SQLException
Specified by:
execute in interface java.sql.Statement

executeBatch

public int[] executeBatch()
                   throws java.sql.SQLException
Specified by:
executeBatch in interface java.sql.Statement

executeQuery

public java.sql.ResultSet executeQuery(java.lang.String arg0)
                                throws java.sql.SQLException
Specified by:
executeQuery in interface java.sql.Statement

executeUpdate

public int executeUpdate(java.lang.String arg0)
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface java.sql.Statement

getConnection

public java.sql.Connection getConnection()
                                  throws java.sql.SQLException
Specified by:
getConnection in interface java.sql.Statement

getFetchDirection

public int getFetchDirection()
                      throws java.sql.SQLException
Specified by:
getFetchDirection in interface java.sql.Statement

getFetchSize

public int getFetchSize()
                 throws java.sql.SQLException
Specified by:
getFetchSize in interface java.sql.Statement

getMaxFieldSize

public int getMaxFieldSize()
                    throws java.sql.SQLException
Specified by:
getMaxFieldSize in interface java.sql.Statement

getMaxRows

public int getMaxRows()
               throws java.sql.SQLException
Specified by:
getMaxRows in interface java.sql.Statement

getMoreResults

public boolean getMoreResults()
                       throws java.sql.SQLException
Specified by:
getMoreResults in interface java.sql.Statement

getQueryTimeout

public int getQueryTimeout()
                    throws java.sql.SQLException
Specified by:
getQueryTimeout in interface java.sql.Statement

getResultSet

public java.sql.ResultSet getResultSet()
                                throws java.sql.SQLException
Specified by:
getResultSet in interface java.sql.Statement

getResultSetConcurrency

public int getResultSetConcurrency()
                            throws java.sql.SQLException
Specified by:
getResultSetConcurrency in interface java.sql.Statement

getResultSetType

public int getResultSetType()
                     throws java.sql.SQLException
Specified by:
getResultSetType in interface java.sql.Statement

getUpdateCount

public int getUpdateCount()
                   throws java.sql.SQLException
Specified by:
getUpdateCount in interface java.sql.Statement

getWarnings

public java.sql.SQLWarning getWarnings()
                                throws java.sql.SQLException
Specified by:
getWarnings in interface java.sql.Statement

setCursorName

public void setCursorName(java.lang.String arg0)
                   throws java.sql.SQLException
Specified by:
setCursorName in interface java.sql.Statement

setEscapeProcessing

public void setEscapeProcessing(boolean arg0)
                         throws java.sql.SQLException
Specified by:
setEscapeProcessing in interface java.sql.Statement

setFetchDirection

public void setFetchDirection(int arg0)
                       throws java.sql.SQLException
Specified by:
setFetchDirection in interface java.sql.Statement

setFetchSize

public void setFetchSize(int arg0)
                  throws java.sql.SQLException
Specified by:
setFetchSize in interface java.sql.Statement

setMaxFieldSize

public void setMaxFieldSize(int arg0)
                     throws java.sql.SQLException
Specified by:
setMaxFieldSize in interface java.sql.Statement

setMaxRows

public void setMaxRows(int arg0)
                throws java.sql.SQLException
Specified by:
setMaxRows in interface java.sql.Statement

setQueryTimeout

public void setQueryTimeout(int arg0)
                     throws java.sql.SQLException
Specified by:
setQueryTimeout in interface java.sql.Statement


Copyright © 2000 The jBoss Organization. All Rights Reserved.