package xyz.stream.download.service;

import android.app.NotificationManager;
import android.app.Service;
import android.content.Intent;
import android.os.Build;
import android.os.IBinder;
import android.text.TextUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Objects;
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.TimeUnit;
import q0.b;
import xf.a;
import xyz.stream.download.DownloadConstant;
import xyz.stream.download.config.InnerConstant;
import xyz.stream.download.db.DbHolder;
import xyz.stream.download.execute.DownloadTask;
import xyz.stream.download.info.DownloadInfo;
import xyz.stream.download.info.FileInfo;
import xyz.stream.download.info.RequestInfo;

/* JADX INFO: loaded from: classes3.dex */
public class DownloadService extends Service {
    public static final String CHANNEL_ID = "download_channel";
    private static final int CORE_POOL_SIZE = 1;
    private static final int CPU_COUNT = Runtime.getRuntime().availableProcessors();
    private static final long KEEP_ALIVE_TIME = 0;
    private static final int MAX_POOL_SIZE = 1;
    public static final String TAG = "Download";
    public static boolean canRequest = true;
    private final a mExecutor = new a(1, 1, KEEP_ALIVE_TIME, TimeUnit.MILLISECONDS, new LinkedBlockingDeque());
    private final HashMap<String, DownloadTask> mTasks = new HashMap<>();

    private synchronized void executeDownload(RequestInfo requestInfo) {
        DownloadInfo downloadInfo = requestInfo.getDownloadInfo();
        DownloadTask downloadTask = this.mTasks.get(downloadInfo.getUniqueId());
        DbHolder dbHolder = DbHolder.getInstance(getBaseContext());
        FileInfo fileInfo = dbHolder.getFileInfo(downloadInfo.getUniqueId());
        Objects.toString(downloadTask);
        Objects.toString(fileInfo);
        if (downloadTask == null) {
            if (fileInfo != null) {
                if (fileInfo.getDownloadStatus() == 44 || fileInfo.getDownloadStatus() == 43) {
                    dbHolder.updateState(fileInfo.getId(), 45);
                } else if (fileInfo.getDownloadStatus() == 46) {
                    if (downloadInfo.getFile().exists()) {
                        if (!TextUtils.isEmpty(downloadInfo.getAction())) {
                            Intent intent = new Intent();
                            intent.setAction(downloadInfo.getAction());
                            intent.putExtra(DownloadConstant.EXTRA_INTENT_DOWNLOAD, fileInfo);
                            sendBroadcast(intent);
                        }
                        return;
                    }
                    dbHolder.deleteFileInfo(downloadInfo.getUniqueId());
                }
            }
            if (requestInfo.getDictate() != 10) {
                if (requestInfo.getDictate() == 12 && fileInfo != null) {
                    dbHolder.deleteFileInfo(fileInfo.getId());
                }
                this.mTasks.remove(downloadInfo.getUniqueId());
                return;
            }
            downloadTask = new DownloadTask(this, downloadInfo, dbHolder);
            this.mTasks.put(downloadInfo.getUniqueId(), downloadTask);
        } else if ((downloadTask.getStatus() == 46 || downloadTask.getStatus() == 44) && !downloadInfo.getFile().exists()) {
            downloadTask.pause();
            this.mTasks.remove(downloadInfo.getUniqueId());
            executeDownload(requestInfo);
            return;
        }
        if (requestInfo.getDictate() == 10) {
            this.mExecutor.e(downloadTask);
        } else if (requestInfo.getDictate() == 11) {
            downloadTask.pause();
            this.mTasks.remove(downloadInfo.getUniqueId());
        } else {
            if (fileInfo != null) {
                dbHolder.deleteFileInfo(fileInfo.getId());
            }
            this.mTasks.remove(downloadInfo.getUniqueId());
        }
    }

    /* JADX INFO: Access modifiers changed from: private */
    public /* synthetic */ void lambda$onStartCommand$0(ArrayList arrayList) {
        try {
            Iterator it = arrayList.iterator();
            while (it.hasNext()) {
                executeDownload((RequestInfo) it.next());
            }
        } catch (Throwable unused) {
        }
    }

    @Override // android.app.Service
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override // android.app.Service
    public void onCreate() {
        super.onCreate();
        if (Build.VERSION.SDK_INT >= 26) {
            ((NotificationManager) getSystemService(NotificationManager.class)).createNotificationChannel(b.a());
        }
    }

    @Override // android.app.Service
    public int onStartCommand(Intent intent, int i10, int i11) {
        if (canRequest) {
            canRequest = false;
            if (intent != null && intent.hasExtra(InnerConstant.Inner.SERVICE_INTENT_EXTRA)) {
                try {
                    ArrayList arrayList = (ArrayList) intent.getSerializableExtra(InnerConstant.Inner.SERVICE_INTENT_EXTRA);
                    if (arrayList != null && !arrayList.isEmpty()) {
                        new Thread(new ve.b(this, arrayList, 28), "DownloadService-RequestHandler").start();
                    }
                } catch (Exception e10) {
                    e10.getMessage();
                }
            }
            canRequest = true;
        }
        return super.onStartCommand(intent, i10, i11);
    }
}
