diff options
author | 2014-09-30 17:05:20 +0900 | |
---|---|---|
committer | 2014-10-01 12:20:27 +0900 | |
commit | 9d92d3e02d135a510b124f4a31a4721e43a11151 (patch) | |
tree | 94c087e5ac9d10d2b62e94682508e42efc047a9f /java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java | |
parent | a4a4e9d96bfb0f41fe04abb28d8be49d7d780cbe (diff) | |
download | latinime-9d92d3e02d135a510b124f4a31a4721e43a11151.tar.gz latinime-9d92d3e02d135a510b124f4a31a4721e43a11151.tar.xz latinime-9d92d3e02d135a510b124f4a31a4721e43a11151.zip |
Avoid downloading the metadata in quick succession.
Bug: 17668298
Bug: 8651816
Bug: 17709442
Change-Id: Ib232f9d95d7c01a028be85d10f974a5a570c0ed5
Diffstat (limited to 'java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java')
-rw-r--r-- | java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java b/java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java index e9dde4245..c9e8f9118 100644 --- a/java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java +++ b/java/src/com/android/inputmethod/dictionarypack/MetadataDbHelper.java @@ -433,18 +433,18 @@ public class MetadataDbHelper extends SQLiteOpenHelper { * * @param context a context instance to open the database on * @param uri the URI to retrieve the metadata download ID of - * @return the metadata download ID, or NOT_AN_ID if no download is in progress + * @return the download id and start date, or null if the URL is not known */ - public static long getMetadataDownloadIdForURI(final Context context, - final String uri) { + public static DownloadIdAndStartDate getMetadataDownloadIdAndStartDateForURI( + final Context context, final String uri) { SQLiteDatabase defaultDb = getDb(context, null); final Cursor cursor = defaultDb.query(CLIENT_TABLE_NAME, - new String[] { CLIENT_PENDINGID_COLUMN }, + new String[] { CLIENT_PENDINGID_COLUMN, CLIENT_LAST_UPDATE_DATE_COLUMN }, CLIENT_METADATA_URI_COLUMN + " = ?", new String[] { uri }, null, null, null, null); try { - if (!cursor.moveToFirst()) return UpdateHandler.NOT_AN_ID; - return cursor.getInt(0); // Only one column, return it + if (!cursor.moveToFirst()) return null; + return new DownloadIdAndStartDate(cursor.getInt(0), cursor.getLong(1)); } finally { cursor.close(); } @@ -922,6 +922,7 @@ public class MetadataDbHelper extends SQLiteOpenHelper { final long downloadId) { final ContentValues values = new ContentValues(); values.put(CLIENT_PENDINGID_COLUMN, downloadId); + values.put(CLIENT_LAST_UPDATE_DATE_COLUMN, System.currentTimeMillis()); final SQLiteDatabase defaultDb = getDb(context, ""); final Cursor cursor = MetadataDbHelper.queryClientIds(context); if (null == cursor) return; |