Class BatchWriterPreparedStatementImpl

  • All Implemented Interfaces:
    BatchWriter
    Direct Known Subclasses:
    BatchWriterPostgresCopyImpl

    public class BatchWriterPreparedStatementImpl
    extends BatchWriterSimpleImpl
    An implementation of the BatchWriter interface that uses JDBC PreparedStatement addBatch() and executeBatch() methods.
    Author:
    Matthew Wakeling
    • Constructor Detail

      • BatchWriterPreparedStatementImpl

        public BatchWriterPreparedStatementImpl()
    • Method Detail

      • doInserts

        protected int doInserts​(java.lang.String name,
                                TableBatch table,
                                java.util.List<FlushJob> batches)
                         throws java.sql.SQLException
        Performs all the inserts for the given table name and table batch.
        Overrides:
        doInserts in class BatchWriterSimpleImpl
        Parameters:
        name - the name of the table
        table - the table batch
        batches - the List of batches into which new flushjobs should be placed
        Returns:
        the number of rows inserted
        Throws:
        java.sql.SQLException - if an error occurs
      • doIndirectionInserts

        protected int doIndirectionInserts​(java.lang.String name,
                                           IndirectionTableBatch table,
                                           java.util.List<FlushJob> batches)
                                    throws java.sql.SQLException
        Performs all the insert operations for the given IndirectionTableBatch and name.
        Overrides:
        doIndirectionInserts in class BatchWriterSimpleImpl
        Parameters:
        name - the name of the table
        table - the IndirectionTableBatch
        batches - the List of flushjobs to add further actions to
        Returns:
        the number of rows inserted
        Throws:
        java.sql.SQLException - if an error occurs
      • addToPostDeleteBatch

        protected void addToPostDeleteBatch​(java.lang.String sql)
                                     throws java.sql.SQLException
        Adds a statement to the postDeleteBatch.
        Overrides:
        addToPostDeleteBatch in class BatchWriterSimpleImpl
        Parameters:
        sql - the statement
        Throws:
        java.sql.SQLException - if an error occurs
      • addToLastBatch

        protected void addToLastBatch​(java.lang.String sql)
                               throws java.sql.SQLException
        Adds a statement to the lastBatch.
        Overrides:
        addToLastBatch in class BatchWriterSimpleImpl
        Parameters:
        sql - the statement
        Throws:
        java.sql.SQLException - if an error occurs