aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorKurt Partridge <kep@google.com>2012-09-05 10:39:02 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-09-05 10:39:03 -0700
commit625cfe3d2119538b508c0d2eb82d1098579e467e (patch)
tree3876e71f4e219000ac6fb9ea7f6ddbbaa293e76d /java/src
parent8a599c420ead9e653d9a47530e56105ff2f6a247 (diff)
parent17114054e91d9172f0432171862a72e832838e96 (diff)
downloadlatinime-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.java5
-rw-r--r--java/src/com/android/inputmethod/research/ResearchLogger.java12
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));
}