Package groovy.sql
Class BatchingStatementWrapper
java.lang.Object
groovy.lang.GroovyObjectSupport
groovy.sql.BatchingStatementWrapper
- All Implemented Interfaces:
 GroovyObject,java.lang.AutoCloseable
- Direct Known Subclasses:
 BatchingPreparedStatementWrapper
public class BatchingStatementWrapper extends GroovyObjectSupport implements java.lang.AutoCloseable
Class which delegates to a Statement but keeps track of a batch count size.
 If the batch count reaches the predefined number, this Statement does an executeBatch()
 automatically. If batchSize is zero, then no batching is performed.
- 
Field Summary
Fields Modifier and Type Field Description protected intbatchCountprotected intbatchSizeprotected java.util.logging.Loggerlogprotected java.util.List<java.lang.Integer>results - 
Constructor Summary
Constructors Constructor Description BatchingStatementWrapper(java.sql.Statement delegate, int batchSize, java.util.logging.Logger log) - 
Method Summary
Modifier and Type Method Description voidaddBatch(java.lang.String sql)voidclearBatch()voidclose()int[]executeBatch()protected voidincrementBatchCount()Increments batch count (after addBatch(..) has been called) and executedelegate.executeBatch()if batchSize has been reached.java.lang.ObjectinvokeMethod(java.lang.String name, java.lang.Object args)Invokes the given method.protected voidprocessResult(int[] lastResult)protected voidreset()Methods inherited from class groovy.lang.GroovyObjectSupport
getMetaClass, setMetaClassMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface groovy.lang.GroovyObject
getProperty, setProperty 
- 
Field Details
- 
batchSize
protected int batchSize - 
batchCount
protected int batchCount - 
log
protected java.util.logging.Logger log - 
results
protected java.util.List<java.lang.Integer> results 
 - 
 - 
Constructor Details
- 
BatchingStatementWrapper
public BatchingStatementWrapper(java.sql.Statement delegate, int batchSize, java.util.logging.Logger log) 
 - 
 - 
Method Details
- 
reset
protected void reset() - 
invokeMethod
public java.lang.Object invokeMethod(java.lang.String name, java.lang.Object args)Description copied from interface:GroovyObjectInvokes the given method.- Specified by:
 invokeMethodin interfaceGroovyObject- Parameters:
 name- the name of the method to callargs- the arguments to use for the method call- Returns:
 - the result of invoking the method
 
 - 
addBatch
public void addBatch(java.lang.String sql) throws java.sql.SQLException- Throws:
 java.sql.SQLException
 - 
incrementBatchCount
protected void incrementBatchCount() throws java.sql.SQLExceptionIncrements batch count (after addBatch(..) has been called) and executedelegate.executeBatch()if batchSize has been reached.- Throws:
 java.sql.SQLException
 - 
clearBatch
public void clearBatch() throws java.sql.SQLException- Throws:
 java.sql.SQLException
 - 
executeBatch
public int[] executeBatch() throws java.sql.SQLException- Throws:
 java.sql.SQLException
 - 
processResult
protected void processResult(int[] lastResult) - 
close
public void close() throws java.sql.SQLException- Specified by:
 closein interfacejava.lang.AutoCloseable- Throws:
 java.sql.SQLException
 
 -