翰林优商.apk(点击下载) / n.java


package com.ss.android.socialbase.downloader.impls;

import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import android.util.SparseArray;
import com.ss.android.socialbase.downloader.downloader.IndependentProcessDownloadService;
import com.ss.android.socialbase.downloader.downloader.a;
import com.ss.android.socialbase.downloader.downloader.c;
import com.ss.android.socialbase.downloader.downloader.d;
import com.ss.android.socialbase.downloader.downloader.i;
import com.ss.android.socialbase.downloader.i.f;
import com.ss.android.socialbase.downloader.i.g;
import com.ss.android.socialbase.downloader.model.DownloadTask;
import java.util.List;

/* compiled from: IndependentDownloadServiceHandler */
public class n extends a implements ServiceConnection {
    private static final String e = "n";
    private i f;
    private com.ss.android.socialbase.downloader.downloader.n g;
    private int h = -1;

    @Override // com.ss.android.socialbase.downloader.downloader.a
    public void startService(Context context, ServiceConnection serviceConnection) {
        try {
            com.ss.android.socialbase.downloader.c.a.b(e, "bindService");
            Intent intent = new Intent(context, IndependentProcessDownloadService.class);
            if (f.a()) {
                intent.putExtra("fix_downloader_db_sigbus", com.ss.android.socialbase.downloader.g.a.c().a("fix_sigbus_downloader_db"));
            }
            if (serviceConnection != null) {
                context.bindService(intent, serviceConnection, 1);
            }
            context.startService(intent);
        } catch (Throwable th) {
            th.printStackTrace();
        }
    }

    @Override // com.ss.android.socialbase.downloader.downloader.a
    public void stopService(Context context, ServiceConnection serviceConnection) {
        com.ss.android.socialbase.downloader.c.a.b(e, "stopService");
        this.b = false;
        Intent intent = new Intent(context, IndependentProcessDownloadService.class);
        if (serviceConnection != null) {
            context.unbindService(serviceConnection);
        }
        context.stopService(intent);
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public IBinder a(Intent intent) {
        if (intent != null && intent.getBooleanExtra("fix_downloader_db_sigbus", false)) {
            Log.w(e, "downloader process sync database on main process!");
            com.ss.android.socialbase.downloader.g.a.a("fix_sigbus_downloader_db", true);
        }
        com.ss.android.socialbase.downloader.c.a.b(e, "onBind IndependentDownloadBinder");
        return new m();
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public void b(DownloadTask downloadTask) {
        if (downloadTask != null) {
            String str = e;
            StringBuilder sb = new StringBuilder();
            sb.append("tryDownload aidlService == null:");
            sb.append(this.f == null);
            com.ss.android.socialbase.downloader.c.a.b(str, sb.toString());
            if (this.f == null) {
                a(downloadTask);
                startService(c.N(), this);
                return;
            }
            g();
            try {
                this.f.a(g.a(downloadTask));
            } catch (RemoteException e2) {
                e2.printStackTrace();
            }
        }
    }

    private void g() {
        SparseArray clone;
        try {
            synchronized (this.a) {
                clone = this.a.clone();
                this.a.clear();
            }
            if (!(clone == null || clone.size() <= 0 || c.C() == null)) {
                for (int i = 0; i < clone.size(); i++) {
                    List<DownloadTask> list = (List) clone.get(clone.keyAt(i));
                    if (list != null) {
                        for (DownloadTask downloadTask : list) {
                            try {
                                this.f.a(g.a(downloadTask));
                            } catch (RemoteException e2) {
                                e2.printStackTrace();
                            }
                        }
                    }
                }
            }
        } catch (Throwable th) {
            com.ss.android.socialbase.downloader.c.a.a(e, "resumePendingTaskForIndependent failed", th);
        }
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public void c(DownloadTask downloadTask) {
        if (downloadTask != null) {
            d.a().a(downloadTask.getDownloadId(), true);
            a C = c.C();
            if (C != null) {
                C.a(downloadTask);
            }
        }
    }

    public void onServiceConnected(ComponentName componentName, IBinder iBinder) {
        String str = e;
        com.ss.android.socialbase.downloader.c.a.b(str, "onServiceConnected ");
        this.f = i.a.a(iBinder);
        com.ss.android.socialbase.downloader.downloader.n nVar = this.g;
        if (nVar != null) {
            nVar.a(iBinder);
        }
        StringBuilder sb = new StringBuilder();
        sb.append("onServiceConnected aidlService!=null");
        sb.append(this.f != null);
        sb.append(" pendingTasks.size:");
        sb.append(this.a.size());
        com.ss.android.socialbase.downloader.c.a.b(str, sb.toString());
        if (this.f != null) {
            d.a().b();
            this.b = true;
            this.d = false;
            int i = this.h;
            if (i != -1) {
                try {
                    this.f.l(i);
                } catch (RemoteException e2) {
                    e2.printStackTrace();
                }
            }
            if (this.f != null) {
                g();
            }
        }
    }

    public void onServiceDisconnected(ComponentName componentName) {
        com.ss.android.socialbase.downloader.c.a.b(e, "onServiceDisconnected ");
        this.f = null;
        this.b = false;
        com.ss.android.socialbase.downloader.downloader.n nVar = this.g;
        if (nVar != null) {
            nVar.h();
        }
    }

    public void onBindingDied(ComponentName componentName) {
        this.f = null;
        com.ss.android.socialbase.downloader.downloader.n nVar = this.g;
        if (nVar != null) {
            nVar.h();
        }
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public void a(com.ss.android.socialbase.downloader.downloader.n nVar) {
        this.g = nVar;
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public void a(int i) {
        i iVar = this.f;
        if (iVar == null) {
            this.h = i;
            return;
        }
        try {
            iVar.l(i);
        } catch (RemoteException e2) {
            e2.printStackTrace();
        }
    }

    @Override // com.ss.android.socialbase.downloader.downloader.o, com.ss.android.socialbase.downloader.downloader.a
    public void startService() {
        if (this.f == null) {
            startService(c.N(), this);
        }
    }
}