jimu-decompiled/sources/com/baidu/license/download/DownloadManager.java
2025-05-13 19:24:51 +02:00

139 lines
4.4 KiB
Java

package com.baidu.license.download;
import android.os.Handler;
import android.os.Looper;
import com.baidu.license.download.a.a;
import com.baidu.license.download.a.trw;
import com.baidu.license.download.base.DownloadCallback;
import com.baidu.license.download.base.DownloadStatusDelivery;
import com.baidu.license.download.base.Downloader;
import com.baidu.license.download.utils.LogUtils;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
/* loaded from: classes.dex */
public class DownloadManager implements Downloader.OnDownloaderDestroyedListener {
private static DownloadManager f;
private oi b;
private ExecutorService c;
private DownloadStatusDelivery d;
private Handler e = new Handler(Looper.getMainLooper());
private Map<String, Downloader> a = new LinkedHashMap();
private DownloadManager() {
a(new oi());
}
public static DownloadManager c() {
if (f == null) {
synchronized (DownloadManager.class) {
if (f == null) {
f = new DownloadManager();
}
}
}
return f;
}
private boolean d(String str) {
Downloader downloader;
if (!this.a.containsKey(str) || (downloader = this.a.get(str)) == null) {
return false;
}
if (downloader.isRunning()) {
LogUtils.a("DownloadInfo has been started!");
return true;
}
LogUtils.a("DownloadInfo not started!");
return false;
}
public void b(String str) {
String c = c(str);
if (this.a.containsKey(c)) {
Downloader downloader = this.a.get(c);
if (downloader != null && downloader.isRunning()) {
downloader.pause();
}
this.a.remove(c);
}
}
private void a(oi oiVar) {
if (oiVar.b() > oiVar.a()) {
throw new IllegalArgumentException("thread num must < max thread num");
}
this.b = oiVar;
this.c = Executors.newFixedThreadPool(this.b.a());
this.d = new trw(this.e);
}
private String c(String str) {
if (str != null) {
return String.valueOf(str.hashCode());
}
throw new IllegalArgumentException("Tag can't be null!");
}
@Override // com.baidu.license.download.base.Downloader.OnDownloaderDestroyedListener
public void a(final String str, Downloader downloader) {
this.e.post(new Runnable() { // from class: com.baidu.license.download.DownloadManager.1
@Override // java.lang.Runnable
public void run() {
if (DownloadManager.this.a.containsKey(str)) {
DownloadManager.this.a.remove(str);
}
}
});
}
public void b() {
this.e.post(new Runnable() { // from class: com.baidu.license.download.DownloadManager.2
@Override // java.lang.Runnable
public void run() {
for (Downloader downloader : DownloadManager.this.a.values()) {
if (downloader != null && downloader.isRunning()) {
downloader.pause();
}
}
}
});
}
public void a(DownloadRequest downloadRequest, String str, DownloadCallback downloadCallback) {
String c = c(str);
if (d(c)) {
return;
}
a aVar = new a(downloadRequest, new com.baidu.license.download.a.nx(this.d, downloadCallback), this.c, c, this.b, this);
this.a.put(c, aVar);
aVar.start();
}
public void a(String str) {
String c = c(str);
if (this.a.containsKey(c)) {
Downloader downloader = this.a.get(c);
if (downloader != null) {
downloader.cancel();
}
this.a.remove(c);
}
}
public void a() {
this.e.post(new Runnable() { // from class: com.baidu.license.download.DownloadManager.3
@Override // java.lang.Runnable
public void run() {
for (Downloader downloader : DownloadManager.this.a.values()) {
if (downloader != null && downloader.isRunning()) {
downloader.cancel();
}
}
}
});
}
}