All Downloads are FREE. Search and download functionalities are using the official Maven repository.

liquibase.statement.core.InsertSetStatement Maven / Gradle / Ivy

There is a newer version: 4.30.0
Show newest version
package liquibase.statement.core;

import liquibase.statement.AbstractSqlStatement;

import java.util.LinkedList;
import java.util.List;

public class InsertSetStatement extends AbstractSqlStatement {
    private LinkedList inserts = new LinkedList<>();
    private String catalogName;
    private String schemaName;
    private String tableName;
    private int batchSize;

    public InsertSetStatement(String catalogName, String schemaName, String tableName) {
        this(catalogName, schemaName, tableName, 50);
    }

    public InsertSetStatement(String catalogName, String schemaName, String tableName,int batchSize) {
        this.catalogName = catalogName;
        this.schemaName = schemaName;
        this.tableName = tableName;
        this.batchSize = batchSize;
    }

    public String getCatalogName() {
        return catalogName;
    }

    public String getSchemaName() {
        return schemaName;
    }

    public String getTableName() {
        return tableName;
    }

    public int getBatchThreshold() {
        return batchSize;
    }

    public InsertSetStatement addInsertStatement(InsertStatement statement) {
        /*
        if(statement.getCatalogName() != this.getCatalogName() 
        || statement.getShemaName() != this.getSchemaName()
        || statement.getTableName() != this.getTableName()) {
        // HANDLE ERROR CONDITION
        }*/
        inserts.add(statement);

        return this;
    }
    public InsertStatement peek() {
      return inserts.peek();
    }

    public List getStatements() {
        return inserts;
    }
    public InsertStatement[] getStatementsArray() {
        return inserts.toArray(new InsertStatement[0]);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy