public abstract class InsertOrUpdateGenerator extends AbstractSqlGenerator<InsertOrUpdateStatement>
PRIORITY_DATABASE, PRIORITY_DEFAULT| Constructor and Description |
|---|
InsertOrUpdateGenerator() |
| Modifier and Type | Method and Description |
|---|---|
Sql[] |
generateSql(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
SqlGeneratorChain sqlGeneratorChain)
Generate the actual Sql for the given statement and database.
|
protected Table |
getAffectedTable(InsertOrUpdateStatement insertOrUpdateStatement) |
protected abstract java.lang.String |
getElse(Database database) |
protected java.lang.String |
getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
SqlGeneratorChain sqlGeneratorChain) |
protected java.lang.String |
getPostUpdateStatements(Database database) |
int |
getPriority()
Of all the SqlGenerators that "support" a given SqlStatement/Database, SqlGeneratorFactory will return the one with the highest priority.
|
protected abstract java.lang.String |
getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
java.lang.String whereClause) |
protected java.lang.String |
getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement,
Database database,
java.lang.String whereClause,
SqlGeneratorChain sqlGeneratorChain) |
protected java.lang.String |
getWhereClause(InsertOrUpdateStatement insertOrUpdateStatement,
Database database) |
ValidationErrors |
validate(InsertOrUpdateStatement statement,
Database database,
SqlGeneratorChain sqlGeneratorChain)
Validate the data contained in the SqlStatement.
|
generateRollbackStatementsIsVolatile, generateStatementsIsVolatile, looksLikeFunctionCall, supports, warnprotected abstract java.lang.String getRecordCheck(InsertOrUpdateStatement insertOrUpdateStatement, Database database, java.lang.String whereClause)
protected abstract java.lang.String getElse(Database database)
protected java.lang.String getPostUpdateStatements(Database database)
public int getPriority()
SqlGeneratorgetPriority in interface PrioritizedServicegetPriority in interface SqlGenerator<InsertOrUpdateStatement>getPriority in class AbstractSqlGenerator<InsertOrUpdateStatement>public ValidationErrors validate(InsertOrUpdateStatement statement, Database database, SqlGeneratorChain sqlGeneratorChain)
SqlGeneratorprotected java.lang.String getWhereClause(InsertOrUpdateStatement insertOrUpdateStatement, Database database)
protected java.lang.String getInsertStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
protected java.lang.String getUpdateStatement(InsertOrUpdateStatement insertOrUpdateStatement, Database database, java.lang.String whereClause, SqlGeneratorChain sqlGeneratorChain) throws LiquibaseException
insertOrUpdateStatement - database - whereClause - sqlGeneratorChain - LiquibaseExceptionpublic Sql[] generateSql(InsertOrUpdateStatement insertOrUpdateStatement, Database database, SqlGeneratorChain sqlGeneratorChain)
SqlGeneratorprotected Table getAffectedTable(InsertOrUpdateStatement insertOrUpdateStatement)