The Spring Framework

org.springframework.jdbc.core
Interface InterruptibleBatchPreparedStatementSetter

All Superinterfaces:
BatchPreparedStatementSetter
All Known Implementing Classes:
AbstractInterruptibleBatchPreparedStatementSetter

public interface InterruptibleBatchPreparedStatementSetter
extends BatchPreparedStatementSetter

Extension of the BatchPreparedStatementSetter interface that adds a batch exhaustion check.

This interface allows you to signal the end of a batch rather than having to determine the exact batch size upfront. Batch size is still being honored but it is now the maximum size of the batch.

The isBatchExhausted method is called after each call to setValues to determine whether there were some values added or if the batch was determined to be complete and no additional values were provided during the last call to setValues.

Consider extending the AbstractInterruptibleBatchPreparedStatementSetter base class instead of implementing this interface directly, having a single callback method that combines the check for available values and the setting of those.

Since:
2.0
Author:
Thomas Risberg
See Also:
JdbcTemplate.batchUpdate(String, BatchPreparedStatementSetter), AbstractInterruptibleBatchPreparedStatementSetter

Method Summary
 boolean isBatchExhausted(int i)
          Return whether the batch is complete, that is, whether there were no additional values added during the last setValues call.
 
Methods inherited from interface org.springframework.jdbc.core.BatchPreparedStatementSetter
getBatchSize, setValues
 

Method Detail

isBatchExhausted

boolean isBatchExhausted(int i)
Return whether the batch is complete, that is, whether there were no additional values added during the last setValues call.

NOTE: If this method returns true, any parameters that might have been set during the last setValues call will be ignored! Make sure that you set a corresponding internal flag if you detect exhaustion at the beginning of your setValues implementation, letting this method return true based on the flag.

Parameters:
i - index of the statement we're issuing in the batch, starting from 0
See Also:
BatchPreparedStatementSetter.setValues(java.sql.PreparedStatement, int)

The Spring Framework

Copyright © 2002-2006 The Spring Framework.