package androidx.room; import androidx.sqlite.db.SupportSQLiteProgram; import androidx.sqlite.db.SupportSQLiteQuery; import io.sentry.Session; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.Arrays; import java.util.Iterator; import java.util.Map; import java.util.TreeMap; import kotlin.Metadata; import kotlin.Unit; import kotlin.annotation.AnnotationRetention; import kotlin.jvm.JvmStatic; import kotlin.jvm.internal.DefaultConstructorMarker; import kotlin.jvm.internal.Intrinsics; /* compiled from: RoomSQLiteQuery.kt */ @Metadata(d1 = {"\u0000X\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\b\n\u0002\b\u0006\n\u0002\u0010\u0015\n\u0002\b\u0003\n\u0002\u0010\u0011\n\u0002\u0010\u0012\n\u0002\b\u0004\n\u0002\u0010\u0013\n\u0002\b\u0002\n\u0002\u0010\u0016\n\u0002\b\u0002\n\u0002\u0010\u000e\n\u0002\b\u0007\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0010\u0006\n\u0000\n\u0002\u0010\t\n\u0002\b\u000e\b\u0007\u0018\u0000 62\u00020\u00012\u00020\u0002:\u000256B\u000f\b\u0002\u0012\u0006\u0010\u0003\u001a\u00020\u0004¢\u0006\u0002\u0010\u0005J\u0018\u0010\"\u001a\u00020#2\u0006\u0010$\u001a\u00020\u00042\u0006\u0010%\u001a\u00020\u0010H\u0016J\u0018\u0010&\u001a\u00020#2\u0006\u0010$\u001a\u00020\u00042\u0006\u0010%\u001a\u00020'H\u0016J\u0018\u0010(\u001a\u00020#2\u0006\u0010$\u001a\u00020\u00042\u0006\u0010%\u001a\u00020)H\u0016J\u0010\u0010*\u001a\u00020#2\u0006\u0010$\u001a\u00020\u0004H\u0016J\u0018\u0010+\u001a\u00020#2\u0006\u0010$\u001a\u00020\u00042\u0006\u0010%\u001a\u00020\u001bH\u0016J\u0010\u0010,\u001a\u00020#2\u0006\u0010-\u001a\u00020\u0002H\u0016J\b\u0010.\u001a\u00020#H\u0016J\b\u0010/\u001a\u00020#H\u0016J\u000e\u00100\u001a\u00020#2\u0006\u00101\u001a\u00020\u0000J\u0016\u00102\u001a\u00020#2\u0006\u0010\u001a\u001a\u00020\u001b2\u0006\u00103\u001a\u00020\u0004J\u0006\u00104\u001a\u00020#R\u001e\u0010\u0007\u001a\u00020\u00042\u0006\u0010\u0006\u001a\u00020\u0004@RX\u0096\u000e¢\u0006\b\n\u0000\u001a\u0004\b\b\u0010\tR\u0014\u0010\n\u001a\u00020\u000bX\u0082\u0004¢\u0006\b\n\u0000\u0012\u0004\b\f\u0010\rR \u0010\u000e\u001a\n\u0012\u0006\u0012\u0004\u0018\u00010\u00100\u000f8\u0006X\u0087\u0004¢\u0006\n\n\u0002\u0010\u0012\u0012\u0004\b\u0011\u0010\rR\u0016\u0010\u0003\u001a\u00020\u00048\u0006X\u0087\u0004¢\u0006\b\n\u0000\u001a\u0004\b\u0013\u0010\tR\u0016\u0010\u0014\u001a\u00020\u00158\u0006X\u0087\u0004¢\u0006\b\n\u0000\u0012\u0004\b\u0016\u0010\rR\u0016\u0010\u0017\u001a\u00020\u00188\u0006X\u0087\u0004¢\u0006\b\n\u0000\u0012\u0004\b\u0019\u0010\rR\u0010\u0010\u001a\u001a\u0004\u0018\u00010\u001bX\u0082\u000e¢\u0006\u0002\n\u0000R\u0014\u0010\u001c\u001a\u00020\u001b8VX\u0096\u0004¢\u0006\u0006\u001a\u0004\b\u001d\u0010\u001eR \u0010\u001f\u001a\n\u0012\u0006\u0012\u0004\u0018\u00010\u001b0\u000f8\u0006X\u0087\u0004¢\u0006\n\n\u0002\u0010!\u0012\u0004\b \u0010\r¨\u00067"}, d2 = {"Landroidx/room/RoomSQLiteQuery;", "Landroidx/sqlite/db/SupportSQLiteQuery;", "Landroidx/sqlite/db/SupportSQLiteProgram;", "capacity", "", "(I)V", "", "argCount", "getArgCount", "()I", "bindingTypes", "", "getBindingTypes$annotations", "()V", "blobBindings", "", "", "getBlobBindings$annotations", "[[B", "getCapacity", "doubleBindings", "", "getDoubleBindings$annotations", "longBindings", "", "getLongBindings$annotations", "query", "", "sql", "getSql", "()Ljava/lang/String;", "stringBindings", "getStringBindings$annotations", "[Ljava/lang/String;", "bindBlob", "", "index", "value", "bindDouble", "", "bindLong", "", "bindNull", "bindString", "bindTo", "statement", "clearBindings", "close", "copyArgumentsFrom", "other", Session.JsonKeys.INIT, "initArgCount", "release", "Binding", "Companion", "room-runtime_release"}, k = 1, mv = {1, 7, 1}, xi = 48) /* loaded from: classes2.dex */ public final class RoomSQLiteQuery implements SupportSQLiteQuery, SupportSQLiteProgram { private static final int BLOB = 5; public static final int DESIRED_POOL_SIZE = 10; private static final int DOUBLE = 3; private static final int LONG = 2; private static final int NULL = 1; public static final int POOL_LIMIT = 15; private static final int STRING = 4; private int argCount; private final int[] bindingTypes; public final byte[][] blobBindings; private final int capacity; public final double[] doubleBindings; public final long[] longBindings; private volatile String query; public final String[] stringBindings; /* renamed from: Companion, reason: from kotlin metadata */ public static final Companion INSTANCE = new Companion(null); public static final TreeMap queryPool = new TreeMap<>(); /* compiled from: RoomSQLiteQuery.kt */ @Metadata(d1 = {"\u0000\n\n\u0002\u0018\u0002\n\u0002\u0010\u001b\n\u0000\b\u0081\u0002\u0018\u00002\u00020\u0001B\u0000¨\u0006\u0002"}, d2 = {"Landroidx/room/RoomSQLiteQuery$Binding;", "", "room-runtime_release"}, k = 1, mv = {1, 7, 1}, xi = 48) @Retention(RetentionPolicy.SOURCE) @kotlin.annotation.Retention(AnnotationRetention.SOURCE) /* loaded from: classes2.dex */ public @interface Binding { } public /* synthetic */ RoomSQLiteQuery(int i, DefaultConstructorMarker defaultConstructorMarker) { this(i); } @JvmStatic public static final RoomSQLiteQuery acquire(String str, int i) { return INSTANCE.acquire(str, i); } @JvmStatic public static final RoomSQLiteQuery copyFrom(SupportSQLiteQuery supportSQLiteQuery) { return INSTANCE.copyFrom(supportSQLiteQuery); } private static /* synthetic */ void getBindingTypes$annotations() { } public static /* synthetic */ void getBlobBindings$annotations() { } public static /* synthetic */ void getDoubleBindings$annotations() { } public static /* synthetic */ void getLongBindings$annotations() { } public static /* synthetic */ void getStringBindings$annotations() { } @Override // java.io.Closeable, java.lang.AutoCloseable public void close() { } @Override // androidx.sqlite.db.SupportSQLiteQuery public int getArgCount() { return this.argCount; } public final int getCapacity() { return this.capacity; } public final void init(String query, int initArgCount) { Intrinsics.checkNotNullParameter(query, "query"); this.query = query; this.argCount = initArgCount; } private RoomSQLiteQuery(int i) { this.capacity = i; int i2 = i + 1; this.bindingTypes = new int[i2]; this.longBindings = new long[i2]; this.doubleBindings = new double[i2]; this.stringBindings = new String[i2]; this.blobBindings = new byte[i2]; } public final void release() { TreeMap treeMap = queryPool; synchronized (treeMap) { treeMap.put(Integer.valueOf(this.capacity), this); INSTANCE.prunePoolLocked$room_runtime_release(); Unit unit = Unit.INSTANCE; } } @Override // androidx.sqlite.db.SupportSQLiteQuery /* renamed from: getSql */ public String getQuery() { String str = this.query; if (str != null) { return str; } throw new IllegalStateException("Required value was null.".toString()); } @Override // androidx.sqlite.db.SupportSQLiteQuery public void bindTo(SupportSQLiteProgram statement) { Intrinsics.checkNotNullParameter(statement, "statement"); int argCount = getArgCount(); if (1 > argCount) { return; } int i = 1; while (true) { int i2 = this.bindingTypes[i]; if (i2 == 1) { statement.bindNull(i); } else if (i2 == 2) { statement.bindLong(i, this.longBindings[i]); } else if (i2 == 3) { statement.bindDouble(i, this.doubleBindings[i]); } else if (i2 == 4) { String str = this.stringBindings[i]; if (str == null) { throw new IllegalArgumentException("Required value was null.".toString()); } statement.bindString(i, str); } else if (i2 == 5) { byte[] bArr = this.blobBindings[i]; if (bArr == null) { throw new IllegalArgumentException("Required value was null.".toString()); } statement.bindBlob(i, bArr); } if (i == argCount) { return; } else { i++; } } } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindNull(int index) { this.bindingTypes[index] = 1; } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindLong(int index, long value) { this.bindingTypes[index] = 2; this.longBindings[index] = value; } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindDouble(int index, double value) { this.bindingTypes[index] = 3; this.doubleBindings[index] = value; } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindString(int index, String value) { Intrinsics.checkNotNullParameter(value, "value"); this.bindingTypes[index] = 4; this.stringBindings[index] = value; } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindBlob(int index, byte[] value) { Intrinsics.checkNotNullParameter(value, "value"); this.bindingTypes[index] = 5; this.blobBindings[index] = value; } public final void copyArgumentsFrom(RoomSQLiteQuery other) { Intrinsics.checkNotNullParameter(other, "other"); int argCount = other.getArgCount() + 1; System.arraycopy(other.bindingTypes, 0, this.bindingTypes, 0, argCount); System.arraycopy(other.longBindings, 0, this.longBindings, 0, argCount); System.arraycopy(other.stringBindings, 0, this.stringBindings, 0, argCount); System.arraycopy(other.blobBindings, 0, this.blobBindings, 0, argCount); System.arraycopy(other.doubleBindings, 0, this.doubleBindings, 0, argCount); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void clearBindings() { Arrays.fill(this.bindingTypes, 1); Arrays.fill(this.stringBindings, (Object) null); Arrays.fill(this.blobBindings, (Object) null); this.query = null; } /* compiled from: RoomSQLiteQuery.kt */ @Metadata(d1 = {"\u00006\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\t\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u000e\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0002\b\u0002\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J\u0018\u0010\u0011\u001a\u00020\u000f2\u0006\u0010\u0012\u001a\u00020\u00132\u0006\u0010\u0014\u001a\u00020\u0004H\u0007J\u0010\u0010\u0015\u001a\u00020\u000f2\u0006\u0010\u0016\u001a\u00020\u0017H\u0007J\r\u0010\u0018\u001a\u00020\u0019H\u0000¢\u0006\u0002\b\u001aR\u000e\u0010\u0003\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\u0016\u0010\u0005\u001a\u00020\u00048\u0006X\u0087T¢\u0006\b\n\u0000\u0012\u0004\b\u0006\u0010\u0002R\u000e\u0010\u0007\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\u000e\u0010\b\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\u000e\u0010\t\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\u0016\u0010\n\u001a\u00020\u00048\u0006X\u0087T¢\u0006\b\n\u0000\u0012\u0004\b\u000b\u0010\u0002R\u000e\u0010\f\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\"\u0010\r\u001a\u000e\u0012\u0004\u0012\u00020\u0004\u0012\u0004\u0012\u00020\u000f0\u000e8\u0006X\u0087\u0004¢\u0006\b\n\u0000\u0012\u0004\b\u0010\u0010\u0002¨\u0006\u001b"}, d2 = {"Landroidx/room/RoomSQLiteQuery$Companion;", "", "()V", "BLOB", "", "DESIRED_POOL_SIZE", "getDESIRED_POOL_SIZE$annotations", "DOUBLE", "LONG", "NULL", "POOL_LIMIT", "getPOOL_LIMIT$annotations", "STRING", "queryPool", "Ljava/util/TreeMap;", "Landroidx/room/RoomSQLiteQuery;", "getQueryPool$annotations", "acquire", "query", "", "argumentCount", "copyFrom", "supportSQLiteQuery", "Landroidx/sqlite/db/SupportSQLiteQuery;", "prunePoolLocked", "", "prunePoolLocked$room_runtime_release", "room-runtime_release"}, k = 1, mv = {1, 7, 1}, xi = 48) /* loaded from: classes2.dex */ public static final class Companion { public /* synthetic */ Companion(DefaultConstructorMarker defaultConstructorMarker) { this(); } public static /* synthetic */ void getDESIRED_POOL_SIZE$annotations() { } public static /* synthetic */ void getPOOL_LIMIT$annotations() { } public static /* synthetic */ void getQueryPool$annotations() { } private Companion() { } @JvmStatic public final RoomSQLiteQuery copyFrom(SupportSQLiteQuery supportSQLiteQuery) { Intrinsics.checkNotNullParameter(supportSQLiteQuery, "supportSQLiteQuery"); final RoomSQLiteQuery acquire = acquire(supportSQLiteQuery.getQuery(), supportSQLiteQuery.getArgCount()); supportSQLiteQuery.bindTo(new SupportSQLiteProgram() { // from class: androidx.room.RoomSQLiteQuery$Companion$copyFrom$1 @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindBlob(int index, byte[] value) { Intrinsics.checkNotNullParameter(value, "value"); RoomSQLiteQuery.this.bindBlob(index, value); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindDouble(int index, double value) { RoomSQLiteQuery.this.bindDouble(index, value); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindLong(int index, long value) { RoomSQLiteQuery.this.bindLong(index, value); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindNull(int index) { RoomSQLiteQuery.this.bindNull(index); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void bindString(int index, String value) { Intrinsics.checkNotNullParameter(value, "value"); RoomSQLiteQuery.this.bindString(index, value); } @Override // androidx.sqlite.db.SupportSQLiteProgram public void clearBindings() { RoomSQLiteQuery.this.clearBindings(); } @Override // java.io.Closeable, java.lang.AutoCloseable public void close() { RoomSQLiteQuery.this.close(); } }); return acquire; } @JvmStatic public final RoomSQLiteQuery acquire(String query, int argumentCount) { Intrinsics.checkNotNullParameter(query, "query"); synchronized (RoomSQLiteQuery.queryPool) { Map.Entry ceilingEntry = RoomSQLiteQuery.queryPool.ceilingEntry(Integer.valueOf(argumentCount)); if (ceilingEntry != null) { RoomSQLiteQuery.queryPool.remove(ceilingEntry.getKey()); RoomSQLiteQuery sqliteQuery = ceilingEntry.getValue(); sqliteQuery.init(query, argumentCount); Intrinsics.checkNotNullExpressionValue(sqliteQuery, "sqliteQuery"); return sqliteQuery; } Unit unit = Unit.INSTANCE; RoomSQLiteQuery roomSQLiteQuery = new RoomSQLiteQuery(argumentCount, null); roomSQLiteQuery.init(query, argumentCount); return roomSQLiteQuery; } } public final void prunePoolLocked$room_runtime_release() { if (RoomSQLiteQuery.queryPool.size() <= 15) { return; } int size = RoomSQLiteQuery.queryPool.size() - 10; Iterator it = RoomSQLiteQuery.queryPool.descendingKeySet().iterator(); Intrinsics.checkNotNullExpressionValue(it, "queryPool.descendingKeySet().iterator()"); while (true) { int i = size - 1; if (size <= 0) { return; } it.next(); it.remove(); size = i; } } } }