Coverage Report - liquibase.sqlgenerator.core.AddDefaultValueSQLite
 
Classes in this File Line Coverage Branch Coverage Complexity
AddDefaultValueSQLite
75%
3/4
N/A
1
 
 1  
 package liquibase.sqlgenerator.core;
 2  
 
 3  
 import liquibase.database.Database;
 4  
 import liquibase.database.core.SQLiteDatabase;
 5  
 import liquibase.sql.Sql;
 6  
 import liquibase.sqlgenerator.SqlGenerator;
 7  
 import liquibase.sqlgenerator.SqlGeneratorChain;
 8  
 import liquibase.statement.core.AddDefaultValueStatement;
 9  
 
 10  75
 public class AddDefaultValueSQLite extends AddDefaultValueGenerator {
 11  
     @Override
 12  
     public int getPriority() {
 13  1
         return SqlGenerator.PRIORITY_DATABASE;
 14  
     }
 15  
 
 16  
     @Override
 17  
     public boolean supports(AddDefaultValueStatement statement, Database database) {
 18  65
         return database instanceof SQLiteDatabase;
 19  
     }
 20  
 
 21  
     @Override
 22  
     public Sql[] generateSql(AddDefaultValueStatement statement, Database database, SqlGeneratorChain sqlGeneratorChain) {
 23  
         // // SQLite does not support this ALTER TABLE operation until now.
 24  
         // // For more information see: http://www.sqlite.org/omitted.html.
 25  
         // // This is a small work around...
 26  
         //
 27  
         // List<SqlStatement> statements = new ArrayList<SqlStatement>();
 28  
         //
 29  
         // // define alter table logic
 30  
         // SQLiteDatabase.AlterTableVisitor rename_alter_visitor = new SQLiteDatabase.AlterTableVisitor() {
 31  
         // public ColumnConfig[] getColumnsToAdd() {
 32  
         // return new ColumnConfig[0];
 33  
         // }
 34  
         // public boolean copyThisColumn(ColumnConfig column) {
 35  
         // return true;
 36  
         // }
 37  
         // public boolean createThisColumn(ColumnConfig column) {
 38  
         // if (column.getName().equals(getColumnName())) {
 39  
         // try {
 40  
         // if (getDefaultValue()!=null) {
 41  
         // column.setDefaultValue(getDefaultValue());
 42  
         // }
 43  
         // if (getDefaultValueBoolean()!=null) {
 44  
         // column.setDefaultValueBoolean(getDefaultValueBoolean());
 45  
         // }
 46  
         // if (getDefaultValueDate()!=null) {
 47  
         // column.setDefaultValueDate(getDefaultValueDate());
 48  
         // }
 49  
         // if (getDefaultValueNumeric()!=null) {
 50  
         // column.setDefaultValueNumeric(getDefaultValueNumeric());
 51  
         // }
 52  
         // } catch (ParseException e) {
 53  
         // e.printStackTrace();
 54  
         // }
 55  
         // }
 56  
         // return true;
 57  
         // }
 58  
         // public boolean createThisIndex(Index index) {
 59  
         // return true;
 60  
         // }
 61  
         // };
 62  
         //
 63  
         // try {
 64  
         // // alter table
 65  
         // statements.addAll(SQLiteDatabase.getAlterTableStatements(
 66  
         // rename_alter_visitor,
 67  
         // database,getSchemaName(),getTableName()));
 68  
         // } catch (DatabaseException e) {
 69  
         // e.printStackTrace();
 70  
         // }
 71  
         //
 72  
         // return statements.toArray(new SqlStatement[statements.size()]);
 73  
 
 74  0
         return new Sql[0]; // todo
 75  
     }
 76  
 }