aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2011-12-15 22:56:18 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2011-12-15 22:56:18 -0800
commitb7f60b4ca3eb5a3aa3efe9de81d963c3ba7283b2 (patch)
treeb2e94a1b59b49abd8389881d61da856a5e0faaf3 /java
parent71551c2bc4bba0f426a53e0b52b819d60bd1c35c (diff)
parent6ba5f0d341a0fef9020c9dee814fb4b369620737 (diff)
downloadlatinime-b7f60b4ca3eb5a3aa3efe9de81d963c3ba7283b2.tar.gz
latinime-b7f60b4ca3eb5a3aa3efe9de81d963c3ba7283b2.tar.xz
latinime-b7f60b4ca3eb5a3aa3efe9de81d963c3ba7283b2.zip
am 6ba5f0d3: Merge "Add error log to expensive ArraysCompatUtils.binarySearch"
* commit '6ba5f0d341a0fef9020c9dee814fb4b369620737': Add error log to expensive ArraysCompatUtils.binarySearch
Diffstat (limited to 'java')
-rw-r--r--java/src/com/android/inputmethod/compat/ArraysCompatUtils.java15
1 files changed, 13 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java b/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java
index f6afbcfe2..011473bef 100644
--- a/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java
+++ b/java/src/com/android/inputmethod/compat/ArraysCompatUtils.java
@@ -16,10 +16,14 @@
package com.android.inputmethod.compat;
+import android.util.Log;
+
import java.lang.reflect.Method;
import java.util.Arrays;
public class ArraysCompatUtils {
+ private static final String TAG = ArraysCompatUtils.class.getSimpleName();
+
private static final Method METHOD_Arrays_binarySearch = CompatUtils
.getMethod(Arrays.class, "binarySearch", int[].class, int.class, int.class, int.class);
@@ -33,8 +37,15 @@ public class ArraysCompatUtils {
}
}
- /* package */ static int compatBinarySearch(int[] array, int startIndex, int endIndex,
- int value) {
+ // TODO: Implement fast binary search
+ /* package for testing */
+ static int compatBinarySearch(int[] array, int startIndex, int endIndex, int value) {
+ // Output error log because this method has strict performance penalty.
+ // Note that this method has been called only from spell checker and spell checker exists
+ // only from IceCreamSandwich and after, so that there is no chance on pre-ICS device to
+ // invoke this method.
+ Log.e(TAG, "Invoked expensive binarySearch");
+
if (startIndex > endIndex) throw new IllegalArgumentException();
if (startIndex < 0 || endIndex > array.length) throw new ArrayIndexOutOfBoundsException();