aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/research/ResearchLogUploader.java
diff options
context:
space:
mode:
authorKurt Partridge <kep@google.com>2012-08-20 10:18:24 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-08-20 10:18:30 -0700
commitadb591e75b9a28b0a9af1a35a366ecaa33f56abb (patch)
treea088934d451ddd0f7d9437ea990813db3c9d61bd /java/src/com/android/inputmethod/research/ResearchLogUploader.java
parent7b0459e1a86a299880681ca6bc6522402930a101 (diff)
parent3d3590874926ff92009ed0b4f114c6e5a8ee7394 (diff)
downloadlatinime-adb591e75b9a28b0a9af1a35a366ecaa33f56abb.tar.gz
latinime-adb591e75b9a28b0a9af1a35a366ecaa33f56abb.tar.xz
latinime-adb591e75b9a28b0a9af1a35a366ecaa33f56abb.zip
Merge "Revert "ResearchLogging capture full n-gram data"" into jb-mr1-dev
Diffstat (limited to 'java/src/com/android/inputmethod/research/ResearchLogUploader.java')
-rw-r--r--java/src/com/android/inputmethod/research/ResearchLogUploader.java37
1 files changed, 10 insertions, 27 deletions
diff --git a/java/src/com/android/inputmethod/research/ResearchLogUploader.java b/java/src/com/android/inputmethod/research/ResearchLogUploader.java
index 9904a1de2..3b1213009 100644
--- a/java/src/com/android/inputmethod/research/ResearchLogUploader.java
+++ b/java/src/com/android/inputmethod/research/ResearchLogUploader.java
@@ -27,6 +27,7 @@ import android.os.BatteryManager;
import android.util.Log;
import com.android.inputmethod.latin.R;
+import com.android.inputmethod.latin.R.string;
import java.io.BufferedReader;
import java.io.File;
@@ -47,7 +48,6 @@ public final class ResearchLogUploader {
private static final String TAG = ResearchLogUploader.class.getSimpleName();
private static final int UPLOAD_INTERVAL_IN_MS = 1000 * 60 * 15; // every 15 min
private static final int BUF_SIZE = 1024 * 8;
- protected static final int TIMEOUT_IN_MS = 1000 * 4;
private final boolean mCanUpload;
private final Context mContext;
@@ -55,6 +55,8 @@ public final class ResearchLogUploader {
private final URL mUrl;
private final ScheduledExecutorService mExecutor;
+ private Runnable doUploadRunnable = new UploadRunnable(null, false);
+
public ResearchLogUploader(final Context context, final File filesDir) {
mContext = context;
mFilesDir = filesDir;
@@ -91,15 +93,11 @@ public final class ResearchLogUploader {
public void start() {
if (mCanUpload) {
- mExecutor.scheduleWithFixedDelay(new UploadRunnable(null /* logToWaitFor */,
- null /* callback */, false /* forceUpload */),
- UPLOAD_INTERVAL_IN_MS, UPLOAD_INTERVAL_IN_MS, TimeUnit.MILLISECONDS);
- }
- }
-
- public void uploadAfterCompletion(final ResearchLog researchLog, final Callback callback) {
- if (mCanUpload) {
- mExecutor.submit(new UploadRunnable(researchLog, callback, true /* forceUpload */));
+ Log.d(TAG, "scheduling regular uploading");
+ mExecutor.scheduleWithFixedDelay(doUploadRunnable, UPLOAD_INTERVAL_IN_MS,
+ UPLOAD_INTERVAL_IN_MS, TimeUnit.MILLISECONDS);
+ } else {
+ Log.d(TAG, "no permission to upload");
}
}
@@ -108,8 +106,7 @@ public final class ResearchLogUploader {
// another upload happening right now, as it may have missed the latest changes.
// TODO: Reschedule regular upload tests starting from now.
if (mCanUpload) {
- mExecutor.submit(new UploadRunnable(null /* logToWaitFor */, callback,
- true /* forceUpload */));
+ mExecutor.submit(new UploadRunnable(callback, true));
}
}
@@ -133,33 +130,19 @@ public final class ResearchLogUploader {
}
class UploadRunnable implements Runnable {
- private final ResearchLog mLogToWaitFor;
private final Callback mCallback;
private final boolean mForceUpload;
- public UploadRunnable(final ResearchLog logToWaitFor, final Callback callback,
- final boolean forceUpload) {
- mLogToWaitFor = logToWaitFor;
+ public UploadRunnable(final Callback callback, final boolean forceUpload) {
mCallback = callback;
mForceUpload = forceUpload;
}
@Override
public void run() {
- if (mLogToWaitFor != null) {
- waitFor(mLogToWaitFor);
- }
doUpload();
}
- private void waitFor(final ResearchLog researchLog) {
- try {
- researchLog.awaitTermination(TIMEOUT_IN_MS, TimeUnit.MILLISECONDS);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
-
private void doUpload() {
if (!mForceUpload && (!isExternallyPowered() || !hasWifiConnection())) {
return;