Package groovy.sql
Class BatchingStatementWrapper
- java.lang.Object
-
- groovy.lang.GroovyObjectSupport
-
- groovy.sql.BatchingStatementWrapper
-
- All Implemented Interfaces:
GroovyObject,AutoCloseable
- Direct Known Subclasses:
BatchingPreparedStatementWrapper
public class BatchingStatementWrapper extends GroovyObjectSupport implements 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.
-
-
Constructor Summary
Constructors Constructor Description BatchingStatementWrapper(Statement delegate, int batchSize, Logger log)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddBatch(String sql)voidclearBatch()voidclose()int[]executeBatch()protected voidincrementBatchCount()Increments batch count (after addBatch(..) has been called) and executedelegate.executeBatch()if batchSize has been reached.ObjectinvokeMethod(String name, Object args)Invokes the given method.protected voidprocessResult(int[] lastResult)protected voidreset()-
Methods inherited from class groovy.lang.GroovyObjectSupport
getMetaClass, setMetaClass
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface groovy.lang.GroovyObject
getProperty, setProperty
-
-
-
-
Method Detail
-
reset
protected void reset()
-
invokeMethod
public Object invokeMethod(String name, 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(String sql) throws SQLException
- Throws:
SQLException
-
incrementBatchCount
protected void incrementBatchCount() throws SQLExceptionIncrements batch count (after addBatch(..) has been called) and executedelegate.executeBatch()if batchSize has been reached.- Throws:
SQLException
-
clearBatch
public void clearBatch() throws SQLException- Throws:
SQLException
-
executeBatch
public int[] executeBatch() throws SQLException- Throws:
SQLException
-
processResult
protected void processResult(int[] lastResult)
-
close
public void close() throws SQLException- Specified by:
closein interfaceAutoCloseable- Throws:
SQLException
-
-