diff options
author | 2013-12-12 16:48:34 +0900 | |
---|---|---|
committer | 2013-12-12 16:48:34 +0900 | |
commit | 9ff51527a398a6db15d67e9a592785fd3bce542b (patch) | |
tree | ee2380262528301507a08586f5950875d8b6f071 /java/src | |
parent | 4e9d115401ce4deec7308849d63e0e64a3ed24cd (diff) | |
download | latinime-9ff51527a398a6db15d67e9a592785fd3bce542b.tar.gz latinime-9ff51527a398a6db15d67e9a592785fd3bce542b.tar.xz latinime-9ff51527a398a6db15d67e9a592785fd3bce542b.zip |
Quit passing header file path to native.
Bug: 12089197
Change-Id: Ia898f8d2836c0c131a1834dc0a396d9121ecb972
Diffstat (limited to 'java/src')
3 files changed, 15 insertions, 42 deletions
diff --git a/java/src/com/android/inputmethod/latin/AbstractDictionaryWriter.java b/java/src/com/android/inputmethod/latin/AbstractDictionaryWriter.java index 59d556956..e6fb9807e 100644 --- a/java/src/com/android/inputmethod/latin/AbstractDictionaryWriter.java +++ b/java/src/com/android/inputmethod/latin/AbstractDictionaryWriter.java @@ -60,10 +60,9 @@ abstract public class AbstractDictionaryWriter { abstract protected void writeDictionary(final DictEncoder dictEncoder, final Map<String, String> attributeMap) throws IOException, UnsupportedFormatException; - public void write(final String fileName, final Map<String, String> attributeMap) { - final String tempFileName = fileName + ".temp"; - final File file = new File(mContext.getFilesDir(), fileName); - final File tempFile = new File(mContext.getFilesDir(), tempFileName); + public void write(final File file, final Map<String, String> attributeMap) { + final String tempFilePath = file.getAbsolutePath() + ".temp"; + final File tempFile = new File(tempFilePath); try { final DictEncoder dictEncoder = new Ver3DictEncoder(tempFile); writeDictionary(dictEncoder, attributeMap); diff --git a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java index b52045e3c..4cc31659c 100644 --- a/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/ExpandableBinaryDictionary.java @@ -144,20 +144,8 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { return mBinaryDictionary.isValidDictionary(); } - protected String getFileNameToCreateDict(final String dictName) { - return dictName + DICT_FILE_EXTENSION; - } - - protected String getFileNameToOpenDict(final String dictName) { - return getFileNameToCreateDict(dictName); - } - - private File getFileToCreateDict() { - return new File(mContext.getFilesDir(), getFileNameToCreateDict(mDictName)); - } - - private File getFileToOpenDict() { - return new File(mContext.getFilesDir(), getFileNameToOpenDict(mDictName)); + private File getDictFile() { + return new File(mContext.getFilesDir(), mDictName + DICT_FILE_EXTENSION); } /** @@ -270,17 +258,14 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { public void run() { if (mDictionaryWriter == null) { mBinaryDictionary.close(); - final File file = getFileToCreateDict(); - file.delete(); + final File file = getDictFile(); + if (file.exists() && !FileUtils.deleteRecursively(file)) { + Log.e(TAG, "Can't remove a file: " + file.getName()); + } BinaryDictionary.createEmptyDictFile(file.getAbsolutePath(), DICTIONARY_FORMAT_VERSION, getHeaderAttributeMap()); - // We have 'fileToOpen' in addition to 'file' for the v4 dictionary format - // where 'file' is a directory, and 'fileToOpen' is a normal file. - final File fileToOpen = getFileToOpenDict(); - // TODO: Make BinaryDictionary's constructor be able to accept filename - // without extension. mBinaryDictionary = new BinaryDictionary( - fileToOpen.getAbsolutePath(), 0 /* offset */, fileToOpen.length(), + file.getAbsolutePath(), 0 /* offset */, file.length(), true /* useFullEditDistance */, null, mDictType, mIsUpdatable); } else { mDictionaryWriter.clear(); @@ -531,7 +516,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { } } - final File file = getFileToOpenDict(); + final File file = getDictFile(); final String filename = file.getAbsolutePath(); final long length = file.length(); @@ -572,14 +557,14 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { if (needsToReloadBeforeWriting()) { mDictionaryWriter.clear(); loadDictionaryAsync(); - mDictionaryWriter.write(getFileNameToCreateDict(mDictName), getHeaderAttributeMap()); + mDictionaryWriter.write(getDictFile(), getHeaderAttributeMap()); } else { if (mBinaryDictionary == null || !isValidDictionary() // TODO: remove the check below || !matchesExpectedBinaryDictFormatVersionForThisType( mBinaryDictionary.getFormatVersion())) { - final File file = getFileToCreateDict(); - if (!FileUtils.deleteRecursively(file)) { + final File file = getDictFile(); + if (file.exists() && !FileUtils.deleteRecursively(file)) { Log.e(TAG, "Can't remove a file: " + file.getName()); } BinaryDictionary.createEmptyDictFile(file.getAbsolutePath(), @@ -706,8 +691,7 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { // TODO: cache the file's existence so that we avoid doing a disk access each time. private boolean dictionaryFileExists() { - final File file = getFileToOpenDict(); - return file.exists(); + return getDictFile().exists(); } /** diff --git a/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java b/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java index 8321df94b..ceec3e1cb 100644 --- a/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java +++ b/java/src/com/android/inputmethod/latin/personalization/DecayingExpandableBinaryDictionaryBase.java @@ -112,16 +112,6 @@ public abstract class DecayingExpandableBinaryDictionaryBase extends ExpandableB return formatVersion == REQUIRED_BINARY_DICTIONARY_VERSION; } - @Override - protected String getFileNameToCreateDict(final String dictName) { - return dictName; - } - - @Override - protected String getFileNameToOpenDict(final String dictName) { - return dictName + "/" + dictName + FormatSpec.HEADER_FILE_EXTENSION; - } - public void addMultipleDictionaryEntriesToDictionary( final ArrayList<LanguageModelParam> languageModelParams, final ExpandableBinaryDictionary.AddMultipleDictionaryEntriesCallback callback) { |