diff options
author | 2012-09-05 10:39:02 -0700 | |
---|---|---|
committer | 2012-09-05 10:39:03 -0700 | |
commit | 625cfe3d2119538b508c0d2eb82d1098579e467e (patch) | |
tree | 3876e71f4e219000ac6fb9ea7f6ddbbaa293e76d /java/src | |
parent | 8a599c420ead9e653d9a47530e56105ff2f6a247 (diff) | |
parent | 17114054e91d9172f0432171862a72e832838e96 (diff) | |
download | latinime-625cfe3d2119538b508c0d2eb82d1098579e467e.tar.gz latinime-625cfe3d2119538b508c0d2eb82d1098579e467e.tar.xz latinime-625cfe3d2119538b508c0d2eb82d1098579e467e.zip |
Merge "ResearchLog uploadingService now waits for logging to finish" into jb-mr1-dev
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/research/ResearchLog.java | 5 | ||||
-rw-r--r-- | java/src/com/android/inputmethod/research/ResearchLogger.java | 12 |
2 files changed, 12 insertions, 5 deletions
diff --git a/java/src/com/android/inputmethod/research/ResearchLog.java b/java/src/com/android/inputmethod/research/ResearchLog.java index cd9ff85f8..369c6e0df 100644 --- a/java/src/com/android/inputmethod/research/ResearchLog.java +++ b/java/src/com/android/inputmethod/research/ResearchLog.java @@ -93,7 +93,7 @@ public class ResearchLog { mFile = outputFile; } - public synchronized void close() { + public synchronized void close(final Runnable onClosed) { mExecutor.submit(new Callable<Object>() { @Override public Object call() throws Exception { @@ -111,6 +111,9 @@ public class ResearchLog { if (mFile.exists()) { mFile.setWritable(false, false); } + if (onClosed != null) { + onClosed.run(); + } } return null; } diff --git a/java/src/com/android/inputmethod/research/ResearchLogger.java b/java/src/com/android/inputmethod/research/ResearchLogger.java index 5c2487195..816db5806 100644 --- a/java/src/com/android/inputmethod/research/ResearchLogger.java +++ b/java/src/com/android/inputmethod/research/ResearchLogger.java @@ -376,11 +376,11 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang if (mMainLogBuffer != null) { publishLogBuffer(mMainLogBuffer, mMainResearchLog, false /* isIncludingPrivateData */); - mMainResearchLog.close(); + mMainResearchLog.close(null /* callback */); mMainLogBuffer = null; } if (mFeedbackLogBuffer != null) { - mFeedbackLog.close(); + mFeedbackLog.close(null /* callback */); mFeedbackLogBuffer = null; } } @@ -549,8 +549,12 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang false /* isPotentiallyPrivate */); mFeedbackLogBuffer.shiftIn(feedbackLogUnit); publishLogBuffer(mFeedbackLogBuffer, mFeedbackLog, true /* isIncludingPrivateData */); - mFeedbackLog.close(); - uploadNow(); + mFeedbackLog.close(new Runnable() { + @Override + public void run() { + uploadNow(); + } + }); mFeedbackLog = new ResearchLog(createLogFile(mFilesDir)); } |