Merge "Add start_time and end_time for PreviewPrograms"
diff --git a/src/com/android/providers/tv/TvProvider.java b/src/com/android/providers/tv/TvProvider.java
index c0e5fc5..fa1e820 100644
--- a/src/com/android/providers/tv/TvProvider.java
+++ b/src/com/android/providers/tv/TvProvider.java
@@ -89,7 +89,7 @@
private static final boolean DEBUG = false;
private static final String TAG = "TvProvider";
- static final int DATABASE_VERSION = 37;
+ static final int DATABASE_VERSION = 38;
static final String SHARED_PREF_BLOCKED_PACKAGES_KEY = "blocked_packages";
static final String CHANNELS_TABLE = "channels";
static final String PROGRAMS_TABLE = "programs";
@@ -502,6 +502,10 @@
PreviewPrograms.COLUMN_CONTENT_ID);
sPreviewProgramProjectionMap.put(PreviewPrograms.COLUMN_SPLIT_ID,
PreviewPrograms.COLUMN_SPLIT_ID);
+ sPreviewProgramProjectionMap.put(PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS,
+ PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS);
+ sPreviewProgramProjectionMap.put(PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS,
+ PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS);
sWatchNextProgramProjectionMap.clear();
sWatchNextProgramProjectionMap.put(WatchNextPrograms._ID, WatchNextPrograms._ID);
@@ -602,6 +606,10 @@
WatchNextPrograms.COLUMN_LAST_ENGAGEMENT_TIME_UTC_MILLIS);
sWatchNextProgramProjectionMap.put(WatchNextPrograms.COLUMN_SPLIT_ID,
WatchNextPrograms.COLUMN_SPLIT_ID);
+ sWatchNextProgramProjectionMap.put(WatchNextPrograms.COLUMN_START_TIME_UTC_MILLIS,
+ PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS);
+ sWatchNextProgramProjectionMap.put(WatchNextPrograms.COLUMN_END_TIME_UTC_MILLIS,
+ PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS);
}
// Mapping from broadcast genre to canonical genre.
@@ -708,6 +716,8 @@
+ PreviewPrograms.COLUMN_BROWSABLE + " INTEGER NOT NULL DEFAULT 1,"
+ PreviewPrograms.COLUMN_CONTENT_ID + " TEXT,"
+ PreviewPrograms.COLUMN_SPLIT_ID + " TEXT,"
+ + PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS + " INTEGER,"
+ + PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS + " INTEGER,"
+ "FOREIGN KEY("
+ PreviewPrograms.COLUMN_CHANNEL_ID + "," + PreviewPrograms.COLUMN_PACKAGE_NAME
+ ") REFERENCES " + CHANNELS_TABLE + "("
@@ -770,7 +780,9 @@
+ WatchNextPrograms.COLUMN_BROWSABLE + " INTEGER NOT NULL DEFAULT 1,"
+ WatchNextPrograms.COLUMN_CONTENT_ID + " TEXT,"
+ WatchNextPrograms.COLUMN_LAST_ENGAGEMENT_TIME_UTC_MILLIS + " INTEGER,"
- + WatchNextPrograms.COLUMN_SPLIT_ID + " TEXT"
+ + WatchNextPrograms.COLUMN_SPLIT_ID + " TEXT,"
+ + WatchNextPrograms.COLUMN_START_TIME_UTC_MILLIS + " INTEGER,"
+ + WatchNextPrograms.COLUMN_END_TIME_UTC_MILLIS + " INTEGER"
+ ");";
private static final String CREATE_WATCH_NEXT_PROGRAMS_PACKAGE_NAME_INDEX_SQL =
"CREATE INDEX watch_next_programs_package_name_index ON " + WATCH_NEXT_PROGRAMS_TABLE
@@ -1081,6 +1093,28 @@
db.execSQL("ALTER TABLE " + CHANNELS_TABLE + " ADD "
+ Channels.COLUMN_BROADCAST_GENRE + " TEXT;");
}
+ if (oldVersion <= 37) {
+ if (!getColumnNames(db, PREVIEW_PROGRAMS_TABLE)
+ .contains(PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS)) {
+ db.execSQL("ALTER TABLE " + PREVIEW_PROGRAMS_TABLE + " ADD "
+ + PreviewPrograms.COLUMN_START_TIME_UTC_MILLIS + " INTEGER;");
+ }
+ if (!getColumnNames(db, PREVIEW_PROGRAMS_TABLE)
+ .contains(PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS)) {
+ db.execSQL("ALTER TABLE " + PREVIEW_PROGRAMS_TABLE + " ADD "
+ + PreviewPrograms.COLUMN_END_TIME_UTC_MILLIS + " INTEGER;");
+ }
+ if (!getColumnNames(db, WATCH_NEXT_PROGRAMS_TABLE)
+ .contains(WatchNextPrograms.COLUMN_START_TIME_UTC_MILLIS)) {
+ db.execSQL("ALTER TABLE " + WATCH_NEXT_PROGRAMS_TABLE + " ADD "
+ + WatchNextPrograms.COLUMN_START_TIME_UTC_MILLIS + " INTEGER;");
+ }
+ if (!getColumnNames(db, WATCH_NEXT_PROGRAMS_TABLE)
+ .contains(WatchNextPrograms.COLUMN_END_TIME_UTC_MILLIS)) {
+ db.execSQL("ALTER TABLE " + WATCH_NEXT_PROGRAMS_TABLE + " ADD "
+ + WatchNextPrograms.COLUMN_END_TIME_UTC_MILLIS + " INTEGER;");
+ }
+ }
Log.i(TAG, "Upgrading from version " + oldVersion + " to " + newVersion + " is done.");
}