Merge "Arrange to send the rawChecksum to LatinIME."
commit
814cf03470
|
@ -89,10 +89,13 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
private static final class WordListInfo {
|
private static final class WordListInfo {
|
||||||
public final String mId;
|
public final String mId;
|
||||||
public final String mLocale;
|
public final String mLocale;
|
||||||
|
public final String mRawChecksum;
|
||||||
public final int mMatchLevel;
|
public final int mMatchLevel;
|
||||||
public WordListInfo(final String id, final String locale, final int matchLevel) {
|
public WordListInfo(final String id, final String locale, final String rawChecksum,
|
||||||
|
final int matchLevel) {
|
||||||
mId = id;
|
mId = id;
|
||||||
mLocale = locale;
|
mLocale = locale;
|
||||||
|
mRawChecksum = rawChecksum;
|
||||||
mMatchLevel = matchLevel;
|
mMatchLevel = matchLevel;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -106,7 +109,8 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
private static final class ResourcePathCursor extends AbstractCursor {
|
private static final class ResourcePathCursor extends AbstractCursor {
|
||||||
|
|
||||||
// Column names for the cursor returned by this content provider.
|
// Column names for the cursor returned by this content provider.
|
||||||
static private final String[] columnNames = { "id", "locale" };
|
static private final String[] columnNames = { MetadataDbHelper.WORDLISTID_COLUMN,
|
||||||
|
MetadataDbHelper.LOCALE_COLUMN, MetadataDbHelper.RAW_CHECKSUM_COLUMN };
|
||||||
|
|
||||||
// The list of word lists served by this provider that match the client request.
|
// The list of word lists served by this provider that match the client request.
|
||||||
final WordListInfo[] mWordLists;
|
final WordListInfo[] mWordLists;
|
||||||
|
@ -141,6 +145,7 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
switch (column) {
|
switch (column) {
|
||||||
case 0: return mWordLists[mPos].mId;
|
case 0: return mWordLists[mPos].mId;
|
||||||
case 1: return mWordLists[mPos].mLocale;
|
case 1: return mWordLists[mPos].mLocale;
|
||||||
|
case 2: return mWordLists[mPos].mRawChecksum;
|
||||||
default : return null;
|
default : return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -357,6 +362,8 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
final int localeIndex = results.getColumnIndex(MetadataDbHelper.LOCALE_COLUMN);
|
final int localeIndex = results.getColumnIndex(MetadataDbHelper.LOCALE_COLUMN);
|
||||||
final int localFileNameIndex =
|
final int localFileNameIndex =
|
||||||
results.getColumnIndex(MetadataDbHelper.LOCAL_FILENAME_COLUMN);
|
results.getColumnIndex(MetadataDbHelper.LOCAL_FILENAME_COLUMN);
|
||||||
|
final int rawChecksumIndex =
|
||||||
|
results.getColumnIndex(MetadataDbHelper.RAW_CHECKSUM_COLUMN);
|
||||||
final int statusIndex = results.getColumnIndex(MetadataDbHelper.STATUS_COLUMN);
|
final int statusIndex = results.getColumnIndex(MetadataDbHelper.STATUS_COLUMN);
|
||||||
if (results.moveToFirst()) {
|
if (results.moveToFirst()) {
|
||||||
do {
|
do {
|
||||||
|
@ -379,6 +386,7 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
}
|
}
|
||||||
final String wordListLocale = results.getString(localeIndex);
|
final String wordListLocale = results.getString(localeIndex);
|
||||||
final String wordListLocalFilename = results.getString(localFileNameIndex);
|
final String wordListLocalFilename = results.getString(localFileNameIndex);
|
||||||
|
final String wordListRawChecksum = results.getString(rawChecksumIndex);
|
||||||
final int wordListStatus = results.getInt(statusIndex);
|
final int wordListStatus = results.getInt(statusIndex);
|
||||||
// Test the requested locale against this wordlist locale. The requested locale
|
// Test the requested locale against this wordlist locale. The requested locale
|
||||||
// has to either match exactly or be more specific than the dictionary - a
|
// has to either match exactly or be more specific than the dictionary - a
|
||||||
|
@ -412,8 +420,8 @@ public final class DictionaryProvider extends ContentProvider {
|
||||||
final WordListInfo currentBestMatch = dicts.get(wordListCategory);
|
final WordListInfo currentBestMatch = dicts.get(wordListCategory);
|
||||||
if (null == currentBestMatch
|
if (null == currentBestMatch
|
||||||
|| currentBestMatch.mMatchLevel < matchLevel) {
|
|| currentBestMatch.mMatchLevel < matchLevel) {
|
||||||
dicts.put(wordListCategory,
|
dicts.put(wordListCategory, new WordListInfo(wordListId, wordListLocale,
|
||||||
new WordListInfo(wordListId, wordListLocale, matchLevel));
|
wordListRawChecksum, matchLevel));
|
||||||
}
|
}
|
||||||
} while (results.moveToNext());
|
} while (results.moveToNext());
|
||||||
}
|
}
|
||||||
|
|
|
@ -167,8 +167,9 @@ public final class BinaryDictionaryFileDumper {
|
||||||
do {
|
do {
|
||||||
final String wordListId = cursor.getString(0);
|
final String wordListId = cursor.getString(0);
|
||||||
final String wordListLocale = cursor.getString(1);
|
final String wordListLocale = cursor.getString(1);
|
||||||
|
final String wordListRawChecksum = cursor.getString(2);
|
||||||
if (TextUtils.isEmpty(wordListId)) continue;
|
if (TextUtils.isEmpty(wordListId)) continue;
|
||||||
list.add(new WordListInfo(wordListId, wordListLocale));
|
list.add(new WordListInfo(wordListId, wordListLocale, wordListRawChecksum));
|
||||||
} while (cursor.moveToNext());
|
} while (cursor.moveToNext());
|
||||||
return list;
|
return list;
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
|
|
|
@ -22,8 +22,10 @@ package com.android.inputmethod.latin;
|
||||||
public final class WordListInfo {
|
public final class WordListInfo {
|
||||||
public final String mId;
|
public final String mId;
|
||||||
public final String mLocale;
|
public final String mLocale;
|
||||||
public WordListInfo(final String id, final String locale) {
|
public final String mRawChecksum;
|
||||||
|
public WordListInfo(final String id, final String locale, final String rawChecksum) {
|
||||||
mId = id;
|
mId = id;
|
||||||
mLocale = locale;
|
mLocale = locale;
|
||||||
|
mRawChecksum = rawChecksum;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue