liquibase.sqlgenerator.core
Class AbstractSqlGenerator<StatementType extends SqlStatement>

java.lang.Object
  extended by liquibase.sqlgenerator.core.AbstractSqlGenerator<StatementType>
All Implemented Interfaces:
PrioritizedService, SqlGenerator<StatementType>
Direct Known Subclasses:
AddAutoIncrementGenerator, AddColumnGenerator, AddDefaultValueGenerator, AddForeignKeyConstraintGenerator, AddPrimaryKeyGenerator, AddUniqueConstraintGenerator, AlterSequenceGenerator, ClearDatabaseChangeLogTableGenerator, CommentGenerator, CopyRowsGenerator, CreateDatabaseChangeLogLockTableGenerator, CreateDatabaseChangeLogTableGenerator, CreateDatabaseChangeLogTableGeneratorSybase, CreateIndexGenerator, CreateProcedureGenerator, CreateSequenceGenerator, CreateTableGenerator, CreateViewGenerator, CreateViewGeneratorInformix, DeleteGenerator, DropColumnGenerator, DropDefaultValueGenerator, DropForeignKeyConstraintGenerator, DropIndexGenerator, DropPrimaryKeyGenerator, DropProcedureGenerator, DropSequenceGenerator, DropTableGenerator, DropUniqueConstraintGenerator, DropViewGenerator, FindForeignKeyConstraintsGeneratorDB2, FindForeignKeyConstraintsGeneratorDerby, FindForeignKeyConstraintsGeneratorFirebird, FindForeignKeyConstraintsGeneratorHsql, FindForeignKeyConstraintsGeneratorMSSQL, FindForeignKeyConstraintsGeneratorMySQL, FindForeignKeyConstraintsGeneratorOracle, FindForeignKeyConstraintsGeneratorPostgres, GetNextChangeSetSequenceValueGenerator, GetViewDefinitionGenerator, InitializeDatabaseChangeLogLockTableGenerator, InsertDataChangeGenerator, InsertGenerator, InsertOrUpdateGenerator, InsertSetGenerator, LockDatabaseChangeLogGenerator, MarkChangeSetRanGenerator, ModifyDataTypeGenerator, RawSqlGenerator, ReindexGeneratorSQLite, RemoveChangeSetRanStatusGenerator, RenameColumnGenerator, RenameSequenceGenerator, RenameTableGenerator, RenameViewGenerator, ReorganizeTableGeneratorDB2, RuntimeGenerator, SelectFromDatabaseChangeLogGenerator, SelectFromDatabaseChangeLogLockGenerator, SetColumnRemarksGenerator, SetNullableGenerator, SetTableRemarksGenerator, StoredProcedureGenerator, TableRowCountGenerator, TagDatabaseGenerator, UnlockDatabaseChangeLogGenerator, UpdateChangeSetChecksumGenerator, UpdateDataChangeGenerator, UpdateGenerator

public abstract class AbstractSqlGenerator<StatementType extends SqlStatement>
extends Object
implements SqlGenerator<StatementType>


Field Summary
 
Fields inherited from interface liquibase.sqlgenerator.SqlGenerator
PRIORITY_DATABASE, PRIORITY_DEFAULT
 
Fields inherited from interface liquibase.servicelocator.PrioritizedService
COMPARATOR
 
Constructor Summary
AbstractSqlGenerator()
           
 
Method Summary
 boolean generateRollbackStatementsIsVolatile(Database database)
           
 boolean generateStatementsIsVolatile(Database database)
          Does this change require access to the database metadata? If true, the change cannot be used in an updateSql-style command.
 int getPriority()
          Of all the SqlGenerators that "support" a given SqlStatement/Database, SqlGeneratorFactory will return the one with the highest priority.
 boolean looksLikeFunctionCall(String value, Database database)
           
 boolean supports(StatementType statement, Database database)
          Does this generator support the given statement/database combination? Do not validate the statement with this method, only return if it can suppot it.
 Warnings warn(StatementType statementType, Database database, SqlGeneratorChain sqlGeneratorChain)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface liquibase.sqlgenerator.SqlGenerator
generateSql, validate
 

Constructor Detail

AbstractSqlGenerator

public AbstractSqlGenerator()
Method Detail

getPriority

public int getPriority()
Description copied from interface: SqlGenerator
Of all the SqlGenerators that "support" a given SqlStatement/Database, SqlGeneratorFactory will return the one with the highest priority.

Specified by:
getPriority in interface PrioritizedService
Specified by:
getPriority in interface SqlGenerator<StatementType extends SqlStatement>

generateStatementsIsVolatile

public boolean generateStatementsIsVolatile(Database database)
Description copied from interface: SqlGenerator
Does this change require access to the database metadata? If true, the change cannot be used in an updateSql-style command.

Specified by:
generateStatementsIsVolatile in interface SqlGenerator<StatementType extends SqlStatement>

generateRollbackStatementsIsVolatile

public boolean generateRollbackStatementsIsVolatile(Database database)
Specified by:
generateRollbackStatementsIsVolatile in interface SqlGenerator<StatementType extends SqlStatement>

supports

public boolean supports(StatementType statement,
                        Database database)
Description copied from interface: SqlGenerator
Does this generator support the given statement/database combination? Do not validate the statement with this method, only return if it can suppot it.

Specified by:
supports in interface SqlGenerator<StatementType extends SqlStatement>

warn

public Warnings warn(StatementType statementType,
                     Database database,
                     SqlGeneratorChain sqlGeneratorChain)
Specified by:
warn in interface SqlGenerator<StatementType extends SqlStatement>

looksLikeFunctionCall

public boolean looksLikeFunctionCall(String value,
                                     Database database)


Copyright © 2016 Liquibase.org. All rights reserved.