Merge \"Store the vendor UUID of a KeyphraseSoundModel in the database\" into nyc-mr1-dev
am: ab0783b5d0
Change-Id: I7d1f4556e7a21869f0c1a55a4c5765d66b4763ea
This commit is contained in:
@@ -40,11 +40,12 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
static final boolean DBG = false;
|
static final boolean DBG = false;
|
||||||
|
|
||||||
private static final String NAME = "sound_model.db";
|
private static final String NAME = "sound_model.db";
|
||||||
private static final int VERSION = 4;
|
private static final int VERSION = 5;
|
||||||
|
|
||||||
public static interface SoundModelContract {
|
public static interface SoundModelContract {
|
||||||
public static final String TABLE = "sound_model";
|
public static final String TABLE = "sound_model";
|
||||||
public static final String KEY_MODEL_UUID = "model_uuid";
|
public static final String KEY_MODEL_UUID = "model_uuid";
|
||||||
|
public static final String KEY_VENDOR_UUID = "vendor_uuid";
|
||||||
public static final String KEY_KEYPHRASE_ID = "keyphrase_id";
|
public static final String KEY_KEYPHRASE_ID = "keyphrase_id";
|
||||||
public static final String KEY_TYPE = "type";
|
public static final String KEY_TYPE = "type";
|
||||||
public static final String KEY_DATA = "data";
|
public static final String KEY_DATA = "data";
|
||||||
@@ -58,6 +59,7 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
private static final String CREATE_TABLE_SOUND_MODEL = "CREATE TABLE "
|
private static final String CREATE_TABLE_SOUND_MODEL = "CREATE TABLE "
|
||||||
+ SoundModelContract.TABLE + "("
|
+ SoundModelContract.TABLE + "("
|
||||||
+ SoundModelContract.KEY_MODEL_UUID + " TEXT PRIMARY KEY,"
|
+ SoundModelContract.KEY_MODEL_UUID + " TEXT PRIMARY KEY,"
|
||||||
|
+ SoundModelContract.KEY_VENDOR_UUID + " TEXT, "
|
||||||
+ SoundModelContract.KEY_KEYPHRASE_ID + " INTEGER,"
|
+ SoundModelContract.KEY_KEYPHRASE_ID + " INTEGER,"
|
||||||
+ SoundModelContract.KEY_TYPE + " INTEGER,"
|
+ SoundModelContract.KEY_TYPE + " INTEGER,"
|
||||||
+ SoundModelContract.KEY_DATA + " BLOB,"
|
+ SoundModelContract.KEY_DATA + " BLOB,"
|
||||||
@@ -78,9 +80,19 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
|
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
|
||||||
// TODO: For now, drop older tables and recreate new ones.
|
if (oldVersion < 4) {
|
||||||
db.execSQL("DROP TABLE IF EXISTS " + SoundModelContract.TABLE);
|
// For old versions just drop the tables and recreate new ones.
|
||||||
onCreate(db);
|
db.execSQL("DROP TABLE IF EXISTS " + SoundModelContract.TABLE);
|
||||||
|
onCreate(db);
|
||||||
|
} else {
|
||||||
|
// In the jump to version 5, we added support for the vendor UUID.
|
||||||
|
if (oldVersion == 4) {
|
||||||
|
Slog.d(TAG, "Adding vendor UUID column");
|
||||||
|
db.execSQL("ALTER TABLE " + SoundModelContract.TABLE + " ADD COLUMN "
|
||||||
|
+ SoundModelContract.KEY_VENDOR_UUID + " TEXT");
|
||||||
|
oldVersion++;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -93,6 +105,7 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
SQLiteDatabase db = getWritableDatabase();
|
SQLiteDatabase db = getWritableDatabase();
|
||||||
ContentValues values = new ContentValues();
|
ContentValues values = new ContentValues();
|
||||||
values.put(SoundModelContract.KEY_MODEL_UUID, soundModel.uuid.toString());
|
values.put(SoundModelContract.KEY_MODEL_UUID, soundModel.uuid.toString());
|
||||||
|
values.put(SoundModelContract.KEY_VENDOR_UUID, soundModel.vendorUuid.toString());
|
||||||
values.put(SoundModelContract.KEY_TYPE, SoundTrigger.SoundModel.TYPE_KEYPHRASE);
|
values.put(SoundModelContract.KEY_TYPE, SoundTrigger.SoundModel.TYPE_KEYPHRASE);
|
||||||
values.put(SoundModelContract.KEY_DATA, soundModel.data);
|
values.put(SoundModelContract.KEY_DATA, soundModel.data);
|
||||||
|
|
||||||
@@ -176,6 +189,11 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String vendorUuidString = null;
|
||||||
|
int vendorUuidColumn = c.getColumnIndex(SoundModelContract.KEY_VENDOR_UUID);
|
||||||
|
if (vendorUuidColumn != -1) {
|
||||||
|
vendorUuidString = c.getString(vendorUuidColumn);
|
||||||
|
}
|
||||||
byte[] data = c.getBlob(c.getColumnIndex(SoundModelContract.KEY_DATA));
|
byte[] data = c.getBlob(c.getColumnIndex(SoundModelContract.KEY_DATA));
|
||||||
int recognitionModes = c.getInt(
|
int recognitionModes = c.getInt(
|
||||||
c.getColumnIndex(SoundModelContract.KEY_RECOGNITION_MODES));
|
c.getColumnIndex(SoundModelContract.KEY_RECOGNITION_MODES));
|
||||||
@@ -212,9 +230,12 @@ public class DatabaseHelper extends SQLiteOpenHelper {
|
|||||||
Keyphrase[] keyphrases = new Keyphrase[1];
|
Keyphrase[] keyphrases = new Keyphrase[1];
|
||||||
keyphrases[0] = new Keyphrase(
|
keyphrases[0] = new Keyphrase(
|
||||||
keyphraseId, recognitionModes, modelLocale, text, users);
|
keyphraseId, recognitionModes, modelLocale, text, users);
|
||||||
|
UUID vendorUuid = null;
|
||||||
|
if (vendorUuidString != null) {
|
||||||
|
vendorUuid = UUID.fromString(vendorUuidString);
|
||||||
|
}
|
||||||
KeyphraseSoundModel model = new KeyphraseSoundModel(
|
KeyphraseSoundModel model = new KeyphraseSoundModel(
|
||||||
UUID.fromString(modelUuid),
|
UUID.fromString(modelUuid), vendorUuid, data, keyphrases);
|
||||||
null /* FIXME use vendor UUID */, data, keyphrases);
|
|
||||||
if (DBG) {
|
if (DBG) {
|
||||||
Slog.d(TAG, "Found SoundModel for the given keyphrase/locale/user: "
|
Slog.d(TAG, "Found SoundModel for the given keyphrase/locale/user: "
|
||||||
+ model);
|
+ model);
|
||||||
|
|||||||
Reference in New Issue
Block a user