diff options
| author | Dmitri Plotnikov <dplotnikov@google.com> | 2020-10-23 15:47:19 -0700 |
|---|---|---|
| committer | Dmitri Plotnikov <dplotnikov@google.com> | 2020-10-28 17:27:27 -0700 |
| commit | ec2bc8d99fe9fad5f6e829b259b78a2bd58c4a76 (patch) | |
| tree | c62d2ca580f76a001e6340ac2c4fe10a09b5cccf /core/java/android/content/ContentResolver.java | |
| parent | b2f811d3c8b536452f191bf6aa4ad7c14b0af077 (diff) | |
Add async version of "uncanonicalize"
This CL is basically identical to http://ag/10353234, which
did the same with the sister method, "canonicalize".
Fixes: b/147705670
Test: atest FrameworksCoreTests:android.content.ContentResolverTest
Change-Id: Ide93850f225cdd61779a62fc2c4666efe438b536
Diffstat (limited to 'core/java/android/content/ContentResolver.java')
| -rw-r--r-- | core/java/android/content/ContentResolver.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/core/java/android/content/ContentResolver.java b/core/java/android/content/ContentResolver.java index 50092d17c692..422d3f7c6784 100644 --- a/core/java/android/content/ContentResolver.java +++ b/core/java/android/content/ContentResolver.java @@ -1338,7 +1338,14 @@ public abstract class ContentResolver implements ContentInterface { } try { - return provider.uncanonicalize(mPackageName, mAttributionTag, url); + final UriResultListener resultListener = new UriResultListener(); + provider.uncanonicalizeAsync(mPackageName, mAttributionTag, url, + new RemoteCallback(resultListener)); + resultListener.waitForResult(CONTENT_PROVIDER_TIMEOUT_MILLIS); + if (resultListener.exception != null) { + throw resultListener.exception; + } + return resultListener.result; } catch (RemoteException e) { // Arbitrary and not worth documenting, as Activity // Manager will kill this process shortly anyway. |
