org.apache.openjpa.lib.jdbc
Class DelegatingStatement

java.lang.Object
  extended by org.apache.openjpa.lib.jdbc.DelegatingStatement
All Implemented Interfaces:
java.sql.Statement, Closeable

public class DelegatingStatement
extends java.lang.Object
implements java.sql.Statement, Closeable

Wrapper around an existing statement. Subclasses can override the methods whose behavior they mean to change. The equals and hashCode methods pass through to the base underlying data store statement.

Author:
Abe White

Field Summary
 
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
DelegatingStatement(java.sql.Statement stmnt, java.sql.Connection conn)
           
 
Method Summary
 void addBatch(java.lang.String str)
           
protected  void appendInfo(java.lang.StringBuffer buf)
           
 void cancel()
           
 void clearBatch()
           
 void clearWarnings()
           
 void close()
           
 boolean equals(java.lang.Object other)
           
 boolean execute(java.lang.String str)
           
 boolean execute(java.lang.String s, int i)
           
 boolean execute(java.lang.String s, int[] ia)
           
 boolean execute(java.lang.String s, java.lang.String[] sa)
           
 int[] executeBatch()
           
 java.sql.ResultSet executeQuery(java.lang.String str)
           
protected  java.sql.ResultSet executeQuery(java.lang.String sql, boolean wrap)
          Execute the query, with the option of not wrapping it in a DelegatingResultSet, which is the default.
 int executeUpdate(java.lang.String str)
           
 int executeUpdate(java.lang.String s, int i)
           
 int executeUpdate(java.lang.String s, int[] ia)
           
 int executeUpdate(java.lang.String s, java.lang.String[] sa)
           
 java.sql.Connection getConnection()
           
 java.sql.Statement getDelegate()
          Return the wrapped statement.
 int getFetchDirection()
           
 int getFetchSize()
           
 java.sql.ResultSet getGeneratedKeys()
           
 java.sql.Statement getInnermostDelegate()
          Return the base underlying data store statement.
 int getMaxFieldSize()
           
 int getMaxRows()
           
 boolean getMoreResults()
           
 boolean getMoreResults(int i)
           
 int getQueryTimeout()
           
 java.sql.ResultSet getResultSet()
           
protected  java.sql.ResultSet getResultSet(boolean wrap)
          Get the last result set, with the option of not wrapping it in a DelegatingResultSet, which is the default.
 int getResultSetConcurrency()
           
 int getResultSetHoldability()
           
 int getResultSetType()
           
 int getUpdateCount()
           
 java.sql.SQLWarning getWarnings()
           
 int hashCode()
           
 void setCursorName(java.lang.String str)
           
 void setEscapeProcessing(boolean bool)
           
 void setFetchDirection(int i)
           
 void setFetchSize(int i)
           
 void setMaxFieldSize(int i)
           
 void setMaxRows(int i)
           
 void setQueryTimeout(int i)
           
 java.lang.String toString()
           
protected  java.sql.ResultSet wrapResult(java.sql.ResultSet rs, boolean wrap)
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DelegatingStatement

public DelegatingStatement(java.sql.Statement stmnt,
                           java.sql.Connection conn)
Method Detail

wrapResult

protected java.sql.ResultSet wrapResult(java.sql.ResultSet rs,
                                        boolean wrap)

getDelegate

public java.sql.Statement getDelegate()
Return the wrapped statement.


getInnermostDelegate

public java.sql.Statement getInnermostDelegate()
Return the base underlying data store statement.


hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object other)
Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

appendInfo

protected void appendInfo(java.lang.StringBuffer buf)

executeQuery

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

executeQuery

protected java.sql.ResultSet executeQuery(java.lang.String sql,
                                          boolean wrap)
                                   throws java.sql.SQLException
Execute the query, with the option of not wrapping it in a DelegatingResultSet, which is the default.

Throws:
java.sql.SQLException

executeUpdate

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

execute

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

close

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

getMaxFieldSize

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

setMaxFieldSize

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

getMaxRows

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

setMaxRows

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

setEscapeProcessing

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

getQueryTimeout

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

setQueryTimeout

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

cancel

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

getWarnings

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

clearWarnings

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

setCursorName

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

getResultSet

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

getResultSet

protected java.sql.ResultSet getResultSet(boolean wrap)
                                   throws java.sql.SQLException
Get the last result set, with the option of not wrapping it in a DelegatingResultSet, which is the default.

Throws:
java.sql.SQLException

getUpdateCount

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

getMoreResults

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

setFetchDirection

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

getFetchDirection

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

setFetchSize

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

getFetchSize

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

getResultSetConcurrency

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

getResultSetType

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

addBatch

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

clearBatch

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

executeBatch

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

getConnection

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

getMoreResults

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

getGeneratedKeys

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

executeUpdate

public int executeUpdate(java.lang.String s,
                         int i)
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface java.sql.Statement
Throws:
java.sql.SQLException

executeUpdate

public int executeUpdate(java.lang.String s,
                         int[] ia)
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface java.sql.Statement
Throws:
java.sql.SQLException

executeUpdate

public int executeUpdate(java.lang.String s,
                         java.lang.String[] sa)
                  throws java.sql.SQLException
Specified by:
executeUpdate in interface java.sql.Statement
Throws:
java.sql.SQLException

execute

public boolean execute(java.lang.String s,
                       int i)
                throws java.sql.SQLException
Specified by:
execute in interface java.sql.Statement
Throws:
java.sql.SQLException

execute

public boolean execute(java.lang.String s,
                       int[] ia)
                throws java.sql.SQLException
Specified by:
execute in interface java.sql.Statement
Throws:
java.sql.SQLException

execute

public boolean execute(java.lang.String s,
                       java.lang.String[] sa)
                throws java.sql.SQLException
Specified by:
execute in interface java.sql.Statement
Throws:
java.sql.SQLException

getResultSetHoldability

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