package openfoodfacts.github.scrachx.openfood.models;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
import org.greenrobot.greendao.database.Database;
public class DatabaseHelper extends DaoMaster.OpenHelper {
public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory) {
super(context, name, factory);
}
public DatabaseHelper(Context context, String name) {
super(context, name);
}
@Override
public void onCreate(Database db) {
Log.i("greenDAO", "Creating tables for schema version " + DaoMaster.SCHEMA_VERSION);
DaoMaster.createAllTables(db, false);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.i("greenDAO", "migrating schema from version " + oldVersion + " to " + newVersion);
for (int migrateVersion = oldVersion + 1; migrateVersion <= newVersion; migrateVersion++) {
upgrade(db, migrateVersion);
}
}
/**
* in case of android.database.sqlite.SQLiteException, the schema version is
* left untouched just fix the code in the version case and push a new
* release
*
* @param db
* @param migrateVersion
*/
private void upgrade(SQLiteDatabase db, int migrateVersion) {
switch (migrateVersion) {
case 2:
db.execSQL("ALTER TABLE send_product ADD COLUMN 'lang' TEXT NOT NULL DEFAULT 'fr';");
break;
}
}
}