Coverage Report - liquibase.sqlgenerator.core.DropSequenceGenerator
 
Classes in this File Line Coverage Branch Coverage Complexity
DropSequenceGenerator
55%
5/9
0%
0/2
1.333
 
 1  
 package liquibase.sqlgenerator.core;
 2  
 
 3  
 import liquibase.database.Database;
 4  
 import liquibase.database.core.PostgresDatabase;
 5  
 import liquibase.exception.ValidationErrors;
 6  
 import liquibase.sql.Sql;
 7  
 import liquibase.sql.UnparsedSql;
 8  
 import liquibase.sqlgenerator.SqlGenerator;
 9  
 import liquibase.sqlgenerator.SqlGeneratorChain;
 10  
 import liquibase.statement.core.DropSequenceStatement;
 11  
 
 12  68
 public class DropSequenceGenerator extends AbstractSqlGenerator<DropSequenceStatement> {
 13  
 
 14  
     @Override
 15  
     public boolean supports(DropSequenceStatement statement, Database database) {
 16  49
         return database.supportsSequences();
 17  
     }
 18  
 
 19  
     public ValidationErrors validate(DropSequenceStatement dropSequenceStatement, Database database,
 20  
             SqlGeneratorChain sqlGeneratorChain) {
 21  9
         ValidationErrors validationErrors = new ValidationErrors();
 22  9
         validationErrors.checkRequiredField("sequenceName", dropSequenceStatement.getSequenceName());
 23  9
         return validationErrors;
 24  
     }
 25  
 
 26  
     public Sql[] generateSql(DropSequenceStatement statement, Database database, SqlGeneratorChain sqlGeneratorChain) {
 27  0
         String sql = "DROP SEQUENCE "
 28  
                 + database.escapeSequenceName(statement.getSchemaName(), statement.getSequenceName());
 29  0
         if (database instanceof PostgresDatabase) {
 30  0
             sql += " CASCADE";
 31  
         }
 32  
 
 33  0
         return new Sql[] { new UnparsedSql(sql) };
 34  
     }
 35  
 }