summaryrefslogtreecommitdiffstats
path: root/packages/ExternalStorageProvider
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2013-10-02 10:15:14 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-10-02 10:15:14 -0700
commitba0591c9e3e22b975567011df784a825a49dcf4f (patch)
tree8be65aeb5102f484f35146ed9ba8b6aaa176f760 /packages/ExternalStorageProvider
parent4a8d08285c0218d8d4cf7bc7f63feed2b2ccdb08 (diff)
parent21d8e96d840be42fae56483a2e291fc10677b2d9 (diff)
downloadframeworks_base-ba0591c9e3e22b975567011df784a825a49dcf4f.zip
frameworks_base-ba0591c9e3e22b975567011df784a825a49dcf4f.tar.gz
frameworks_base-ba0591c9e3e22b975567011df784a825a49dcf4f.tar.bz2
am 21d8e96d: am ef4c3790: am 27d3c0fe: Merge "Isolate calls to each remote DocumentsProvider." into klp-dev
* commit '21d8e96d840be42fae56483a2e291fc10677b2d9': Isolate calls to each remote DocumentsProvider.
Diffstat (limited to 'packages/ExternalStorageProvider')
-rw-r--r--packages/ExternalStorageProvider/src/com/android/externalstorage/TestDocumentsProvider.java21
1 files changed, 20 insertions, 1 deletions
diff --git a/packages/ExternalStorageProvider/src/com/android/externalstorage/TestDocumentsProvider.java b/packages/ExternalStorageProvider/src/com/android/externalstorage/TestDocumentsProvider.java
index e9f2c71..0caddcc 100644
--- a/packages/ExternalStorageProvider/src/com/android/externalstorage/TestDocumentsProvider.java
+++ b/packages/ExternalStorageProvider/src/com/android/externalstorage/TestDocumentsProvider.java
@@ -66,6 +66,7 @@ public class TestDocumentsProvider extends DocumentsProvider {
private static final boolean CHILD_WEDGE = false;
private static final boolean CHILD_CRASH = false;
+ private static final boolean THUMB_HUNDREDS = false;
private static final boolean THUMB_WEDGE = false;
private static final boolean THUMB_CRASH = false;
@@ -225,6 +226,12 @@ public class TestDocumentsProvider extends DocumentsProvider {
includeFile(result, "localfile3", 0);
includeFile(result, "localfile4", 0);
+ if (THUMB_HUNDREDS) {
+ for (int i = 0; i < 256; i++) {
+ includeFile(result, "i maded u an picshure", Document.FLAG_SUPPORTS_THUMBNAIL);
+ }
+ }
+
synchronized (this) {
// Try picking up an existing network fetch
CloudTask task = mTask != null ? mTask.get() : null;
@@ -292,7 +299,7 @@ public class TestDocumentsProvider extends DocumentsProvider {
public AssetFileDescriptor openDocumentThumbnail(
String docId, Point sizeHint, CancellationSignal signal) throws FileNotFoundException {
- if (THUMB_WEDGE) SystemClock.sleep(Integer.MAX_VALUE);
+ if (THUMB_WEDGE) wedgeUntilCanceled(signal);
if (THUMB_CRASH) System.exit(12);
final Bitmap bitmap = Bitmap.createBitmap(32, 32, Bitmap.Config.ARGB_8888);
@@ -332,6 +339,18 @@ public class TestDocumentsProvider extends DocumentsProvider {
return true;
}
+ private static void wedgeUntilCanceled(CancellationSignal signal) {
+ if (signal != null) {
+ while (true) {
+ signal.throwIfCanceled();
+ SystemClock.sleep(500);
+ }
+ } else {
+ Log.w(TAG, "WEDGING WITHOUT A CANCELLATIONSIGNAL");
+ SystemClock.sleep(Integer.MAX_VALUE);
+ }
+ }
+
private static void includeFile(MatrixCursor result, String docId, int flags) {
final RowBuilder row = result.newRow();
row.add(Document.COLUMN_DOCUMENT_ID, docId);