use of com.abubusoft.kripton.android.sqlite.SQLiteUpdateTask in project kripton by xcesco.
the class TestSchemaUpdater2 method testCustomUpdateTwiceStep.
/**
* Destroy and recreate everything
*/
@Test
public void testCustomUpdateTwiceStep() throws Exception {
SQLiteUpdateTestHelper.resetInstance(BindSchoolDataSource.class);
BindSchoolDataSource.build(DataSourceOptions.builder().addUpdateTask(3, new FileInputStream("schemas/school_update_2_3.sql")).addUpdateTask(4, new SQLiteUpdateTask() {
@Override
public void execute(SQLiteDatabase database, int previousVersion, int currentVersion) {
Logger.info("just in case, 3 and 4 are the same!");
}
}).build());
SQLiteSchemaVerifierHelper.forceSchemaUpdate(BindSchoolDataSource.instance(), 4);
Logger.info("finish");
}
use of com.abubusoft.kripton.android.sqlite.SQLiteUpdateTask in project kripton by xcesco.
the class BindXenoDataSource method onUpgrade.
/**
* onUpgrade
*/
@Override
public void onUpgrade(SQLiteDatabase database, int previousVersion, int currentVersion) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Update database '%s' from version %s to version %s", this.name, previousVersion, currentVersion);
}
// if we have a list of update task, try to execute them
if (options.updateTasks != null) {
List<SQLiteUpdateTask> tasks = buildTaskList(previousVersion, currentVersion);
for (SQLiteUpdateTask task : tasks) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Begin update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
task.execute(database, previousVersion, previousVersion + 1);
// log section BEGIN
if (this.logEnabled) {
Logger.info("End update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
previousVersion++;
}
} else {
// drop all tables
SQLiteUpdateTaskHelper.dropTablesAndIndices(database);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", CountryTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(CountryTable.CREATE_TABLE_SQL);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", PhoneNumberTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(PhoneNumberTable.CREATE_TABLE_SQL);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", PrefixConfigTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(PrefixConfigTable.CREATE_TABLE_SQL);
}
if (options.databaseLifecycleHandler != null) {
options.databaseLifecycleHandler.onUpdate(database, previousVersion, currentVersion, true);
}
}
use of com.abubusoft.kripton.android.sqlite.SQLiteUpdateTask in project kripton by xcesco.
the class BindXenoDataSource method onUpgrade.
/**
* onUpgrade
*/
@Override
public void onUpgrade(SQLiteDatabase database, int previousVersion, int currentVersion) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Update database '%s' from version %s to version %s", this.name, previousVersion, currentVersion);
}
// if we have a list of update task, try to execute them
if (options.updateTasks != null) {
List<SQLiteUpdateTask> tasks = buildTaskList(previousVersion, currentVersion);
for (SQLiteUpdateTask task : tasks) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Begin update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
task.execute(database, previousVersion, previousVersion + 1);
// log section BEGIN
if (this.logEnabled) {
Logger.info("End update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
previousVersion++;
}
} else {
// drop all tables
SQLiteUpdateTaskHelper.dropTablesAndIndices(database);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", CountryTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(CountryTable.CREATE_TABLE_SQL);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", PrefixConfigTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(PrefixConfigTable.CREATE_TABLE_SQL);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", PhoneNumberTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(PhoneNumberTable.CREATE_TABLE_SQL);
}
if (options.databaseLifecycleHandler != null) {
options.databaseLifecycleHandler.onUpdate(database, previousVersion, currentVersion, true);
}
}
use of com.abubusoft.kripton.android.sqlite.SQLiteUpdateTask in project kripton by xcesco.
the class BindAppDataSource method onUpgrade.
/**
* onUpgrade
*/
@Override
public void onUpgrade(SQLiteDatabase database, int previousVersion, int currentVersion) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Update database '%s' from version %s to version %s", this.name, previousVersion, currentVersion);
}
// if we have a list of update task, try to execute them
if (options.updateTasks != null) {
List<SQLiteUpdateTask> tasks = buildTaskList(previousVersion, currentVersion);
for (SQLiteUpdateTask task : tasks) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Begin update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
task.execute(database, previousVersion, previousVersion + 1);
// log section BEGIN
if (this.logEnabled) {
Logger.info("End update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
previousVersion++;
}
} else {
// drop all tables
SQLiteUpdateTaskHelper.dropTablesAndIndices(database);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", PersonTable.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(PersonTable.CREATE_TABLE_SQL);
}
if (options.databaseLifecycleHandler != null) {
options.databaseLifecycleHandler.onUpdate(database, previousVersion, currentVersion, true);
}
}
use of com.abubusoft.kripton.android.sqlite.SQLiteUpdateTask in project kripton by xcesco.
the class BindDummy08DataSource method onUpgrade.
/**
* onUpgrade
*/
@Override
public void onUpgrade(SQLiteDatabase database, int previousVersion, int currentVersion) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Update database '%s' from version %s to version %s", this.name, previousVersion, currentVersion);
}
// if we have a list of update task, try to execute them
if (options.updateTasks != null) {
List<SQLiteUpdateTask> tasks = buildTaskList(previousVersion, currentVersion);
for (SQLiteUpdateTask task : tasks) {
// log section BEGIN
if (this.logEnabled) {
Logger.info("Begin update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
task.execute(database, previousVersion, previousVersion + 1);
// log section BEGIN
if (this.logEnabled) {
Logger.info("End update database from version %s to %s", previousVersion, previousVersion + 1);
}
// log section END
previousVersion++;
}
} else {
// drop all tables
SQLiteUpdateTaskHelper.dropTablesAndIndices(database);
// log section BEGIN
if (this.logEnabled) {
Logger.info("DDL: %s", Bean01Table.CREATE_TABLE_SQL);
}
// log section END
database.execSQL(Bean01Table.CREATE_TABLE_SQL);
}
if (options.databaseLifecycleHandler != null) {
options.databaseLifecycleHandler.onUpdate(database, previousVersion, currentVersion, true);
}
}
Aggregations