net.sf.letsparty.driver
Class BasicPreparedStatement

java.lang.Object
  extended bynet.sf.letsparty.driver.BasicPreparedStatement
All Implemented Interfaces:
java.sql.PreparedStatement, java.sql.Statement
Direct Known Subclasses:
DeleteHandler, InsertHandler, SelectHandler, UpdateHandler

public abstract class BasicPreparedStatement
extends java.lang.Object
implements java.sql.PreparedStatement

Base class for Let's Party! statements. It collects jdbc parameters values and provides some helper methods.


Field Summary
protected  Connection connection
           
protected  JdbcParsHandler jdbcParsHandler
           
 
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
BasicPreparedStatement()
           
 
Method Summary
 void clearParameters()
           
protected  PartitionedTableSuffixList constructPartitionedTableSuffixList(PartitionedTable partTable, PartitionedExpression partitionedExpression)
          If partitionedExpression is null returns a list of all the partition; otherwise it returns the list of suffixes this partitionedExpression requires.
protected  java.util.List[] constructTableListOfTables(PartTableVisitor partTableVisitor, PartExpressionVisitor partExpressionVisitor)
          For each partitioned table in the statement (from partTableVisitor) find a list of tables that matches a certain where clause (from partExpressionVisitor)
 boolean execute(java.lang.String arg0)
           
 boolean execute(java.lang.String arg0, int arg1)
           
 boolean execute(java.lang.String arg0, int[] arg1)
           
 boolean execute(java.lang.String arg0, java.lang.String[] arg1)
           
protected  int executeChangingName(java.util.List tableStringList, java.lang.String partitionedTableName, java.lang.String origSqlQuery, Connection connection)
          Execute the origSqlQuery for every table name in tableStringList, each time replacing partitionedTableName with a name from tableStringList
 int executeUpdate(java.lang.String arg0)
           
 int executeUpdate(java.lang.String arg0, int arg1)
           
 int executeUpdate(java.lang.String arg0, int[] arg1)
           
 int executeUpdate(java.lang.String arg0, java.lang.String[] arg1)
           
 java.sql.Connection getConnection()
           
 int getFetchDirection()
           
 int getFetchSize()
           
 int getMaxFieldSize()
           
 int getMaxRows()
           
 int getQueryTimeout()
           
 void setArray(int arg0, java.sql.Array arg1)
           
 void setAsciiStream(int arg0, java.io.InputStream arg1, int arg2)
           
 void setBigDecimal(int arg0, java.math.BigDecimal arg1)
           
 void setBinaryStream(int arg0, java.io.InputStream arg1, int arg2)
           
 void setBlob(int arg0, java.sql.Blob arg1)
           
 void setBoolean(int arg0, boolean arg1)
           
 void setByte(int arg0, byte arg1)
           
 void setBytes(int arg0, byte[] arg1)
           
 void setCharacterStream(int arg0, java.io.Reader arg1, int arg2)
           
 void setClob(int arg0, java.sql.Clob arg1)
           
 void setCursorName(java.lang.String arg0)
           
 void setDate(int arg0, java.sql.Date arg1)
           
 void setDate(int arg0, java.sql.Date arg1, java.util.Calendar arg2)
           
 void setDouble(int arg0, double arg1)
           
 void setEscapeProcessing(boolean arg0)
           
 void setFetchDirection(int arg0)
           
 void setFetchSize(int arg0)
           
 void setFloat(int arg0, float arg1)
           
 void setInt(int arg0, int arg1)
           
 void setLong(int arg0, long arg1)
           
 void setMaxFieldSize(int arg0)
           
 void setMaxRows(int arg0)
           
 void setNull(int arg0, int arg1)
           
 void setNull(int arg0, int arg1, java.lang.String arg2)
           
 void setObject(int arg0, java.lang.Object arg1)
           
 void setObject(int arg0, java.lang.Object arg1, int arg2)
           
 void setObject(int arg0, java.lang.Object arg1, int arg2, int arg3)
           
protected  void setParameters(java.sql.PreparedStatement preparedStatement)
          Set the jdbc values collected in the preparedStatement
protected  void setParameters(java.sql.PreparedStatement preparedStatement, int startFrom)
          Set the jdbc values collected in the preparedStatement, starting from index startFrom
protected  void setParameters(java.sql.PreparedStatement preparedStatement, int startFrom, int upTo)
          Set the jdbc values collected in the preparedStatement, starting from index startFrom up to upTo
 void setQueryTimeout(int arg0)
           
 void setRef(int arg0, java.sql.Ref arg1)
           
 void setShort(int arg0, short arg1)
           
 void setString(int arg0, java.lang.String arg1)
           
 void setTime(int arg0, java.sql.Time arg1)
           
 void setTime(int arg0, java.sql.Time arg1, java.util.Calendar arg2)
           
 void setTimestamp(int arg0, java.sql.Timestamp arg1)
           
 void setTimestamp(int arg0, java.sql.Timestamp arg1, java.util.Calendar arg2)
           
 void setUnicodeStream(int arg0, java.io.InputStream arg1, int arg2)
           
 void setURL(int arg0, java.net.URL arg1)
           
 
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
addBatch, execute, executeQuery, executeUpdate, getMetaData, getParameterMetaData
 
Methods inherited from interface java.sql.Statement
addBatch, cancel, clearBatch, clearWarnings, close, executeBatch, executeQuery, getGeneratedKeys, getMoreResults, getMoreResults, getResultSet, getResultSetConcurrency, getResultSetHoldability, getResultSetType, getUpdateCount, getWarnings
 

Field Detail

jdbcParsHandler

protected JdbcParsHandler jdbcParsHandler

connection

protected Connection connection
Constructor Detail

BasicPreparedStatement

public BasicPreparedStatement()
Method Detail

constructTableListOfTables

protected java.util.List[] constructTableListOfTables(PartTableVisitor partTableVisitor,
                                                      PartExpressionVisitor partExpressionVisitor)
                                               throws LetsPartyException
For each partitioned table in the statement (from partTableVisitor) find a list of tables that matches a certain where clause (from partExpressionVisitor)

Parameters:
partTableVisitor -
partExpressionVisitor -
Throws:
LetsPartyException

setParameters

protected void setParameters(java.sql.PreparedStatement preparedStatement)
                      throws java.sql.SQLException
Set the jdbc values collected in the preparedStatement

Parameters:
preparedStatement -
Throws:
java.sql.SQLException

setParameters

protected void setParameters(java.sql.PreparedStatement preparedStatement,
                             int startFrom)
                      throws java.sql.SQLException
Set the jdbc values collected in the preparedStatement, starting from index startFrom

Parameters:
preparedStatement -
startFrom -
Throws:
java.sql.SQLException

setParameters

protected void setParameters(java.sql.PreparedStatement preparedStatement,
                             int startFrom,
                             int upTo)
                      throws java.sql.SQLException
Set the jdbc values collected in the preparedStatement, starting from index startFrom up to upTo

Parameters:
preparedStatement -
startFrom -
upTo -
Throws:
java.sql.SQLException

executeChangingName

protected int executeChangingName(java.util.List tableStringList,
                                  java.lang.String partitionedTableName,
                                  java.lang.String origSqlQuery,
                                  Connection connection)
                           throws java.sql.SQLException
Execute the origSqlQuery for every table name in tableStringList, each time replacing partitionedTableName with a name from tableStringList

Parameters:
tableStringList -
partitionedTableName -
origSqlQuery -
connection -
Returns:
the number of rows updated
Throws:
java.sql.SQLException

constructPartitionedTableSuffixList

protected PartitionedTableSuffixList constructPartitionedTableSuffixList(PartitionedTable partTable,
                                                                         PartitionedExpression partitionedExpression)
                                                                  throws LetsPartyException
If partitionedExpression is null returns a list of all the partition; otherwise it returns the list of suffixes this partitionedExpression requires.

Parameters:
partTable -
partitionedExpression -
Throws:
LetsPartyException

getConnection

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

clearParameters

public void clearParameters()
                     throws java.sql.SQLException
Specified by:
clearParameters in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

getFetchDirection

public int getFetchDirection()
                      throws java.sql.SQLException
Specified by:
getFetchDirection 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

getMaxFieldSize

public int getMaxFieldSize()
                    throws java.sql.SQLException
Specified by:
getMaxFieldSize 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

getQueryTimeout

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

setArray

public void setArray(int arg0,
                     java.sql.Array arg1)
              throws java.sql.SQLException
Specified by:
setArray in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setAsciiStream

public void setAsciiStream(int arg0,
                           java.io.InputStream arg1,
                           int arg2)
                    throws java.sql.SQLException
Specified by:
setAsciiStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBigDecimal

public void setBigDecimal(int arg0,
                          java.math.BigDecimal arg1)
                   throws java.sql.SQLException
Specified by:
setBigDecimal in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBinaryStream

public void setBinaryStream(int arg0,
                            java.io.InputStream arg1,
                            int arg2)
                     throws java.sql.SQLException
Specified by:
setBinaryStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBlob

public void setBlob(int arg0,
                    java.sql.Blob arg1)
             throws java.sql.SQLException
Specified by:
setBlob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBoolean

public void setBoolean(int arg0,
                       boolean arg1)
                throws java.sql.SQLException
Specified by:
setBoolean in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setByte

public void setByte(int arg0,
                    byte arg1)
             throws java.sql.SQLException
Specified by:
setByte in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setBytes

public void setBytes(int arg0,
                     byte[] arg1)
              throws java.sql.SQLException
Specified by:
setBytes in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setCharacterStream

public void setCharacterStream(int arg0,
                               java.io.Reader arg1,
                               int arg2)
                        throws java.sql.SQLException
Specified by:
setCharacterStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setClob

public void setClob(int arg0,
                    java.sql.Clob arg1)
             throws java.sql.SQLException
Specified by:
setClob in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setCursorName

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

setDate

public void setDate(int arg0,
                    java.sql.Date arg1)
             throws java.sql.SQLException
Specified by:
setDate in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setDate

public void setDate(int arg0,
                    java.sql.Date arg1,
                    java.util.Calendar arg2)
             throws java.sql.SQLException
Specified by:
setDate in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setDouble

public void setDouble(int arg0,
                      double arg1)
               throws java.sql.SQLException
Specified by:
setDouble in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setEscapeProcessing

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

setFetchDirection

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

setFetchSize

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

setFloat

public void setFloat(int arg0,
                     float arg1)
              throws java.sql.SQLException
Specified by:
setFloat in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setInt

public void setInt(int arg0,
                   int arg1)
            throws java.sql.SQLException
Specified by:
setInt in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setLong

public void setLong(int arg0,
                    long arg1)
             throws java.sql.SQLException
Specified by:
setLong in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setMaxFieldSize

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

setMaxRows

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

setNull

public void setNull(int arg0,
                    int arg1)
             throws java.sql.SQLException
Specified by:
setNull in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setNull

public void setNull(int arg0,
                    int arg1,
                    java.lang.String arg2)
             throws java.sql.SQLException
Specified by:
setNull in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int arg0,
                      java.lang.Object arg1)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int arg0,
                      java.lang.Object arg1,
                      int arg2)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setObject

public void setObject(int arg0,
                      java.lang.Object arg1,
                      int arg2,
                      int arg3)
               throws java.sql.SQLException
Specified by:
setObject in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setQueryTimeout

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

setRef

public void setRef(int arg0,
                   java.sql.Ref arg1)
            throws java.sql.SQLException
Specified by:
setRef in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setShort

public void setShort(int arg0,
                     short arg1)
              throws java.sql.SQLException
Specified by:
setShort in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setString

public void setString(int arg0,
                      java.lang.String arg1)
               throws java.sql.SQLException
Specified by:
setString in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTime

public void setTime(int arg0,
                    java.sql.Time arg1)
             throws java.sql.SQLException
Specified by:
setTime in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTime

public void setTime(int arg0,
                    java.sql.Time arg1,
                    java.util.Calendar arg2)
             throws java.sql.SQLException
Specified by:
setTime in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTimestamp

public void setTimestamp(int arg0,
                         java.sql.Timestamp arg1)
                  throws java.sql.SQLException
Specified by:
setTimestamp in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setTimestamp

public void setTimestamp(int arg0,
                         java.sql.Timestamp arg1,
                         java.util.Calendar arg2)
                  throws java.sql.SQLException
Specified by:
setTimestamp in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setUnicodeStream

public void setUnicodeStream(int arg0,
                             java.io.InputStream arg1,
                             int arg2)
                      throws java.sql.SQLException
Specified by:
setUnicodeStream in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

setURL

public void setURL(int arg0,
                   java.net.URL arg1)
            throws java.sql.SQLException
Specified by:
setURL in interface java.sql.PreparedStatement
Throws:
java.sql.SQLException

execute

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

execute

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

execute

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

execute

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

executeUpdate

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

executeUpdate

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

executeUpdate

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

executeUpdate

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