package com.tekartik.sqflite;

import android.content.Context;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteCantOpenDatabaseException;
import android.database.sqlite.SQLiteDatabase;
import android.os.Build;
import androidx.annotation.Nullable;
import com.bytedance.sdk.openadsdk.core.wsy;
import com.google.android.gms.measurement.internal.u1;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

/* JADX INFO: loaded from: classes.dex */
public final class d {

    /* JADX INFO: renamed from: l, reason: collision with root package name */
    public static Boolean f24830l;

    /* JADX INFO: renamed from: a, reason: collision with root package name */
    public final boolean f24831a;

    /* JADX INFO: renamed from: b, reason: collision with root package name */
    public final String f24832b;

    /* JADX INFO: renamed from: c, reason: collision with root package name */
    public final int f24833c;

    @Nullable
    private Integer currentTransactionId;

    /* JADX INFO: renamed from: d, reason: collision with root package name */
    public final int f24834d;

    /* JADX INFO: renamed from: e, reason: collision with root package name */
    public final Context f24835e;

    /* JADX INFO: renamed from: h, reason: collision with root package name */
    public i f24838h;

    @Nullable
    SQLiteDatabase sqliteDatabase;

    /* JADX INFO: renamed from: f, reason: collision with root package name */
    public final ArrayList f24836f = new ArrayList();

    /* JADX INFO: renamed from: g, reason: collision with root package name */
    public final HashMap f24837g = new HashMap();

    /* JADX INFO: renamed from: i, reason: collision with root package name */
    public int f24839i = 0;

    /* JADX INFO: renamed from: j, reason: collision with root package name */
    public int f24840j = 0;

    /* JADX INFO: renamed from: k, reason: collision with root package name */
    public int f24841k = 0;

    public d(Context context, String str, int i10, int i11, boolean z10) {
        this.f24835e = context;
        this.f24832b = str;
        this.f24831a = z10;
        this.f24833c = i10;
        this.f24834d = i11;
    }

    public static void a(d dVar, pc.e eVar) {
        dVar.getClass();
        int iIntValue = ((Integer) eVar.a("cursorId")).intValue();
        boolean zEquals = Boolean.TRUE.equals(eVar.a("cancel"));
        if (ua.b.A(dVar.f24834d)) {
            dVar.i();
        }
        HashMap map = dVar.f24837g;
        j jVar = null;
        if (zEquals) {
            j jVar2 = (j) map.get(Integer.valueOf(iIntValue));
            if (jVar2 != null) {
                dVar.d(jVar2);
            }
            ((pc.a) eVar).success(null);
            return;
        }
        j jVar3 = (j) map.get(Integer.valueOf(iIntValue));
        boolean z10 = false;
        try {
            try {
                if (jVar3 == null) {
                    throw new IllegalStateException("Cursor " + iIntValue + " not found");
                }
                Cursor cursor = jVar3.f24854c;
                Map<String, Object> mapCursorToResults = dVar.cursorToResults(cursor, Integer.valueOf(jVar3.f24853b));
                if (!cursor.isLast() && !cursor.isAfterLast()) {
                    z10 = true;
                }
                if (z10) {
                    mapCursorToResults.put("cursorId", Integer.valueOf(iIntValue));
                }
                ((pc.a) eVar).success(mapCursorToResults);
                if (z10) {
                    return;
                }
                dVar.d(jVar3);
            } catch (Exception e10) {
                dVar.j(e10, eVar);
                if (jVar3 != null) {
                    dVar.d(jVar3);
                } else {
                    jVar = jVar3;
                }
                if (0 != 0 || jVar == null) {
                    return;
                }
                dVar.d(jVar);
            }
        } catch (Throwable th) {
            if (0 == 0 && jVar3 != null) {
                dVar.d(jVar3);
            }
            throw th;
        }
    }

    public static void b(d dVar) {
        while (true) {
            ArrayList arrayList = dVar.f24836f;
            if (arrayList.isEmpty() || dVar.currentTransactionId != null) {
                return;
            }
            ((pc.g) arrayList.get(0)).f31930a.run();
            arrayList.remove(0);
        }
    }

    public static void c(d dVar, pc.e eVar) {
        dVar.getClass();
        pc.b bVar = (pc.b) eVar;
        Object objA = bVar.a("inTransaction");
        Boolean bool = objA instanceof Boolean ? (Boolean) objA : null;
        boolean z10 = Boolean.TRUE.equals(bool) && bVar.e() && bVar.getTransactionId() == null;
        if (z10) {
            int i10 = dVar.f24840j + 1;
            dVar.f24840j = i10;
            dVar.currentTransactionId = Integer.valueOf(i10);
        }
        if (!dVar.h(bVar)) {
            if (z10) {
                dVar.currentTransactionId = null;
            }
        } else if (z10) {
            HashMap map = new HashMap();
            map.put("transactionId", dVar.currentTransactionId);
            ((pc.a) bVar).success(map);
        } else {
            if (Boolean.FALSE.equals(bool)) {
                dVar.currentTransactionId = null;
            }
            ((pc.a) bVar).success(null);
        }
    }

    private Map<String, Object> cursorToResults(Cursor cursor, @Nullable Integer num) {
        HashMap map = null;
        ArrayList arrayList = null;
        int columnCount = 0;
        while (cursor.moveToNext()) {
            if (map == null) {
                arrayList = new ArrayList();
                map = new HashMap();
                columnCount = cursor.getColumnCount();
                map.put("columns", Arrays.asList(cursor.getColumnNames()));
                map.put("rows", arrayList);
            }
            ArrayList arrayList2 = new ArrayList(columnCount);
            for (int i10 = 0; i10 < columnCount; i10++) {
                int type = cursor.getType(i10);
                arrayList2.add(type != 1 ? type != 2 ? type != 3 ? type != 4 ? null : cursor.getBlob(i10) : cursor.getString(i10) : Double.valueOf(cursor.getDouble(i10)) : Long.valueOf(cursor.getLong(i10)));
            }
            arrayList.add(arrayList2);
            if (num != null && arrayList.size() >= num.intValue()) {
                break;
            }
        }
        return map == null ? new HashMap() : map;
    }

    public final void d(j jVar) {
        try {
            int i10 = jVar.f24852a;
            if (ua.b.A(this.f24834d)) {
                i();
            }
            this.f24837g.remove(Integer.valueOf(i10));
            jVar.f24854c.close();
        } catch (Exception unused) {
        }
    }

    /* JADX WARN: Multi-variable type inference failed */
    /* JADX WARN: Removed duplicated region for block: B:48:0x008b  */
    /*
        Code decompiled incorrectly, please refer to instructions dump.
    */
    public final boolean e(pc.e eVar) throws Throwable {
        Exception e10;
        Cursor cursorRawQuery;
        if (!h(eVar)) {
            return false;
        }
        wsy.ro roVar = 0;
        if (eVar.b()) {
            ((pc.a) eVar).success(null);
            return true;
        }
        try {
            try {
                cursorRawQuery = this.sqliteDatabase.rawQuery("SELECT changes(), last_insert_rowid()", null);
                if (cursorRawQuery != null) {
                    try {
                        if (cursorRawQuery.getCount() > 0 && cursorRawQuery.moveToFirst()) {
                            int i10 = cursorRawQuery.getInt(0);
                            int i11 = this.f24834d;
                            if (i10 == 0) {
                                if (ua.b.z(i11)) {
                                    i();
                                    cursorRawQuery.getLong(1);
                                }
                                ((pc.a) eVar).success(null);
                                cursorRawQuery.close();
                                return true;
                            }
                            long j10 = cursorRawQuery.getLong(1);
                            if (ua.b.z(i11)) {
                                i();
                            }
                            ((pc.a) eVar).success(Long.valueOf(j10));
                            cursorRawQuery.close();
                            return true;
                        }
                    } catch (Exception e11) {
                        e10 = e11;
                        j(e10, eVar);
                        if (cursorRawQuery != null) {
                            cursorRawQuery.close();
                        }
                        return false;
                    }
                }
                i();
                ((pc.a) eVar).success(null);
                if (cursorRawQuery != null) {
                    cursorRawQuery.close();
                }
                return true;
            } catch (Throwable th) {
                th = th;
                roVar = "SELECT changes(), last_insert_rowid()";
                if (roVar != 0) {
                    roVar.close();
                }
                throw th;
            }
        } catch (Exception e12) {
            e10 = e12;
            cursorRawQuery = null;
        } catch (Throwable th2) {
            th = th2;
            if (roVar != 0) {
            }
            throw th;
        }
    }

    public final boolean f(pc.e eVar) throws Throwable {
        Cursor cursorRawQueryWithFactory;
        Integer num = (Integer) eVar.a("cursorPageSize");
        pc.b bVar = (pc.b) eVar;
        String str = (String) bVar.a("sql");
        n nVar = new n(str, (List) bVar.a("arguments"));
        if (ua.b.z(this.f24834d)) {
            i();
            nVar.toString();
        }
        j jVar = null;
        try {
            cursorRawQueryWithFactory = this.sqliteDatabase.rawQueryWithFactory(new m3.a(nVar, 2), str, a.f24826a, null);
            try {
                try {
                    Map<String, Object> mapCursorToResults = cursorToResults(cursorRawQueryWithFactory, num);
                    if (num != null && !cursorRawQueryWithFactory.isLast() && !cursorRawQueryWithFactory.isAfterLast()) {
                        int i10 = this.f24841k + 1;
                        this.f24841k = i10;
                        mapCursorToResults.put("cursorId", Integer.valueOf(i10));
                        j jVar2 = new j(i10, num.intValue(), cursorRawQueryWithFactory);
                        try {
                            this.f24837g.put(Integer.valueOf(i10), jVar2);
                            jVar = jVar2;
                        } catch (Exception e10) {
                            e = e10;
                            jVar = jVar2;
                            j(e, eVar);
                            if (jVar != null) {
                                d(jVar);
                            }
                            if (jVar != null || cursorRawQueryWithFactory == null) {
                                return false;
                            }
                            cursorRawQueryWithFactory.close();
                            return false;
                        } catch (Throwable th) {
                            th = th;
                            jVar = jVar2;
                            if (jVar == null && cursorRawQueryWithFactory != null) {
                                cursorRawQueryWithFactory.close();
                            }
                            throw th;
                        }
                    }
                    ((pc.a) eVar).success(mapCursorToResults);
                    if (jVar == null && cursorRawQueryWithFactory != null) {
                        cursorRawQueryWithFactory.close();
                    }
                    return true;
                } catch (Exception e11) {
                    e = e11;
                }
            } catch (Throwable th2) {
                th = th2;
            }
        } catch (Exception e12) {
            e = e12;
            cursorRawQueryWithFactory = null;
        } catch (Throwable th3) {
            th = th3;
            cursorRawQueryWithFactory = null;
        }
    }

    public final boolean g(pc.e eVar) throws Throwable {
        if (!h(eVar)) {
            return false;
        }
        Cursor cursor = null;
        if (eVar.b()) {
            ((pc.a) eVar).success(null);
            return true;
        }
        try {
            try {
                Cursor cursorRawQuery = this.sqliteDatabase.rawQuery("SELECT changes()", null);
                if (cursorRawQuery != null) {
                    try {
                        if (cursorRawQuery.getCount() > 0 && cursorRawQuery.moveToFirst()) {
                            int i10 = cursorRawQuery.getInt(0);
                            if (ua.b.z(this.f24834d)) {
                                i();
                            }
                            ((pc.a) eVar).success(Integer.valueOf(i10));
                            cursorRawQuery.close();
                            return true;
                        }
                    } catch (Exception e10) {
                        e = e10;
                        cursor = cursorRawQuery;
                        j(e, eVar);
                        if (cursor != null) {
                            cursor.close();
                        }
                        return false;
                    } catch (Throwable th) {
                        th = th;
                        cursor = cursorRawQuery;
                        if (cursor != null) {
                            cursor.close();
                        }
                        throw th;
                    }
                }
                i();
                ((pc.a) eVar).success(null);
                if (cursorRawQuery != null) {
                    cursorRawQuery.close();
                }
                return true;
            } catch (Exception e11) {
                e = e11;
            }
        } catch (Throwable th2) {
            th = th2;
        }
    }

    public final boolean h(pc.e eVar) {
        pc.b bVar = (pc.b) eVar;
        String str = (String) bVar.a("sql");
        n nVar = new n(str, (List) bVar.a("arguments"));
        if (ua.b.z(this.f24834d)) {
            i();
            nVar.toString();
        }
        Object objA = bVar.a("inTransaction");
        Boolean bool = objA instanceof Boolean ? (Boolean) objA : null;
        try {
            SQLiteDatabase sQLiteDatabase = this.sqliteDatabase;
            ArrayList arrayList = new ArrayList();
            List list = nVar.f24880b;
            if (list != null) {
                Iterator it = list.iterator();
                while (it.hasNext()) {
                    arrayList.add(n.a(it.next()));
                }
            }
            sQLiteDatabase.execSQL(str, arrayList.toArray(new Object[0]));
            synchronized (this) {
                try {
                    if (Boolean.TRUE.equals(bool)) {
                        this.f24839i++;
                    } else if (Boolean.FALSE.equals(bool)) {
                        this.f24839i--;
                    }
                } finally {
                }
            }
            return true;
        } catch (Exception e10) {
            j(e10, bVar);
            return false;
        }
    }

    public final void i() {
        Thread threadCurrentThread = Thread.currentThread();
        StringBuilder sb = new StringBuilder();
        sb.append(this.f24833c);
        sb.append(",");
        sb.append(threadCurrentThread.getName());
        sb.append("(");
        sb.append(threadCurrentThread.getId());
        sb.append(")");
    }

    public final void j(Exception exc, pc.e eVar) {
        if (exc instanceof SQLiteCantOpenDatabaseException) {
            ((pc.a) eVar).f("open_failed " + this.f24832b, null);
            return;
        }
        if (exc instanceof SQLException) {
            String message = exc.getMessage();
            pc.b bVar = (pc.b) eVar;
            String str = (String) bVar.a("sql");
            n nVar = new n(str, (List) bVar.a("arguments"));
            HashMap mapO = u1.o("sql", str);
            mapO.put("arguments", nVar.f24880b);
            ((pc.a) eVar).f(message, mapO);
            return;
        }
        String message2 = exc.getMessage();
        pc.b bVar2 = (pc.b) eVar;
        String str2 = (String) bVar2.a("sql");
        n nVar2 = new n(str2, (List) bVar2.a("arguments"));
        HashMap mapO2 = u1.o("sql", str2);
        mapO2.put("arguments", nVar2.f24880b);
        ((pc.a) eVar).f(message2, mapO2);
    }

    public final synchronized boolean k() {
        return this.f24839i > 0;
    }

    public final void l() {
        if (f24830l == null) {
            Context context = this.f24835e;
            boolean z10 = false;
            try {
                String packageName = context.getPackageName();
                if ((Build.VERSION.SDK_INT >= 33 ? context.getPackageManager().getApplicationInfo(packageName, PackageManager.ApplicationInfoFlags.of(128L)) : context.getPackageManager().getApplicationInfo(packageName, 128)).metaData.getBoolean("com.tekartik.sqflite.wal_enabled", false)) {
                    z10 = true;
                }
            } catch (Exception e10) {
                e10.printStackTrace();
            }
            Boolean boolValueOf = Boolean.valueOf(z10);
            f24830l = boolValueOf;
            if (boolValueOf.booleanValue() && ua.b.A(this.f24834d)) {
                i();
            }
        }
        this.sqliteDatabase = SQLiteDatabase.openDatabase(this.f24832b, null, f24830l.booleanValue() ? 805306368 : 268435456);
    }

    public final void m(pc.d dVar, b bVar) {
        Integer transactionId = dVar.getTransactionId();
        Integer num = this.currentTransactionId;
        if (num == null) {
            bVar.run();
            return;
        }
        ArrayList arrayList = this.f24836f;
        if (transactionId == null || !(transactionId.equals(num) || transactionId.intValue() == -1)) {
            arrayList.add(new pc.g(bVar));
            return;
        }
        bVar.run();
        if (this.currentTransactionId != null || arrayList.isEmpty()) {
            return;
        }
        this.f24838h.c(this, new y.a(this, 24));
    }
}
