summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/downloads/DownloadScanner.java
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2016-05-09 14:51:23 -0600
committerJeff Sharkey <jsharkey@android.com>2016-05-09 14:53:21 -0600
commit053674aa4d0ecd7e37dadb8ee37a9cafbdf2f16c (patch)
tree6969eebd6afe4abd20cdee1c9cbf481d0b537678 /src/com/android/providers/downloads/DownloadScanner.java
parent8286e24870e89f1100a219200990bd12877b2a1b (diff)
downloadandroid_packages_providers_DownloadProvider-053674aa4d0ecd7e37dadb8ee37a9cafbdf2f16c.tar.gz
android_packages_providers_DownloadProvider-053674aa4d0ecd7e37dadb8ee37a9cafbdf2f16c.tar.bz2
android_packages_providers_DownloadProvider-053674aa4d0ecd7e37dadb8ee37a9cafbdf2f16c.zip
Scan completed downloads when requested.
The recent JobScheduler rewrite means we no longer spin up a service when insterting an already-completed download. However, the calling app may have requested the download to be scanned, so kick off a scan request for them. Bug: 28659693 Change-Id: I497e10995ba04f1522fe8d7e547ebea6e305f6e9
Diffstat (limited to 'src/com/android/providers/downloads/DownloadScanner.java')
-rw-r--r--src/com/android/providers/downloads/DownloadScanner.java11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/com/android/providers/downloads/DownloadScanner.java b/src/com/android/providers/downloads/DownloadScanner.java
index 37f51143..4a5ba87e 100644
--- a/src/com/android/providers/downloads/DownloadScanner.java
+++ b/src/com/android/providers/downloads/DownloadScanner.java
@@ -76,9 +76,13 @@ public class DownloadScanner implements MediaScannerConnectionClient {
}
public static void requestScanBlocking(Context context, DownloadInfo info) {
+ requestScanBlocking(context, info.mId, info.mFileName, info.mMimeType);
+ }
+
+ public static void requestScanBlocking(Context context, long id, String path, String mimeType) {
final DownloadScanner scanner = new DownloadScanner(context);
scanner.mLatch = new CountDownLatch(1);
- scanner.requestScan(info);
+ scanner.requestScan(new ScanRequest(id, path, mimeType));
try {
scanner.mLatch.await(SCAN_TIMEOUT, TimeUnit.MILLISECONDS);
} catch (InterruptedException e) {
@@ -115,10 +119,9 @@ public class DownloadScanner implements MediaScannerConnectionClient {
*
* @see #hasPendingScans()
*/
- public void requestScan(DownloadInfo info) {
- if (LOGV) Log.v(TAG, "requestScan() for " + info.mFileName);
+ public void requestScan(ScanRequest req) {
+ if (LOGV) Log.v(TAG, "requestScan() for " + req.path);
synchronized (mConnection) {
- final ScanRequest req = new ScanRequest(info.mId, info.mFileName, info.mMimeType);
mPending.put(req.path, req);
if (mConnection.isConnected()) {