d.smali
.class public Landroidx/room/p/d;
.super Ljava/lang/Object;
.source ""
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/room/p/d$d;,
Landroidx/room/p/d$c;,
Landroidx/room/p/d$b;,
Landroidx/room/p/d$a;
}
.end annotation
# instance fields
.field public final a:Ljava/lang/String;
.field public final b:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroidx/room/p/d$a;",
">;"
}
.end annotation
.end field
.field public final c:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Landroidx/room/p/d$b;",
">;"
}
.end annotation
.end field
.field public final d:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Landroidx/room/p/d$d;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/lang/String;Ljava/util/Map;Ljava/util/Set;Ljava/util/Set;)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroidx/room/p/d$a;",
">;",
"Ljava/util/Set<",
"Landroidx/room/p/d$b;",
">;",
"Ljava/util/Set<",
"Landroidx/room/p/d$d;",
">;)V"
}
.end annotation
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/room/p/d;->a:Ljava/lang/String;
invoke-static {p2}, Ljava/util/Collections;->unmodifiableMap(Ljava/util/Map;)Ljava/util/Map;
move-result-object p1
iput-object p1, p0, Landroidx/room/p/d;->b:Ljava/util/Map;
invoke-static {p3}, Ljava/util/Collections;->unmodifiableSet(Ljava/util/Set;)Ljava/util/Set;
move-result-object p1
iput-object p1, p0, Landroidx/room/p/d;->c:Ljava/util/Set;
if-nez p4, :cond_15
const/4 p1, 0x0
goto :goto_19
:cond_15
invoke-static {p4}, Ljava/util/Collections;->unmodifiableSet(Ljava/util/Set;)Ljava/util/Set;
move-result-object p1
:goto_19
iput-object p1, p0, Landroidx/room/p/d;->d:Ljava/util/Set;
return-void
.end method
.method public static a(Le/u/a/b;Ljava/lang/String;)Landroidx/room/p/d;
.registers 5
invoke-static {p0, p1}, Landroidx/room/p/d;->b(Le/u/a/b;Ljava/lang/String;)Ljava/util/Map;
move-result-object v0
invoke-static {p0, p1}, Landroidx/room/p/d;->d(Le/u/a/b;Ljava/lang/String;)Ljava/util/Set;
move-result-object v1
invoke-static {p0, p1}, Landroidx/room/p/d;->f(Le/u/a/b;Ljava/lang/String;)Ljava/util/Set;
move-result-object p0
new-instance v2, Landroidx/room/p/d;
invoke-direct {v2, p1, v0, v1, p0}, Landroidx/room/p/d;-><init>(Ljava/lang/String;Ljava/util/Map;Ljava/util/Set;Ljava/util/Set;)V
return-object v2
.end method
.method private static b(Le/u/a/b;Ljava/lang/String;)Ljava/util/Map;
.registers 11
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Le/u/a/b;",
"Ljava/lang/String;",
")",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Landroidx/room/p/d$a;",
">;"
}
.end annotation
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "PRAGMA table_info(`"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "`)"
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-interface {p0, p1}, Le/u/a/b;->H(Ljava/lang/String;)Landroid/database/Cursor;
move-result-object p0
new-instance p1, Ljava/util/HashMap;
invoke-direct {p1}, Ljava/util/HashMap;-><init>()V
:try_start_1f
invoke-interface {p0}, Landroid/database/Cursor;->getColumnCount()I
move-result v0
if-lez v0, :cond_61
const-string v0, "name"
invoke-interface {p0, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v0
const-string v1, "type"
invoke-interface {p0, v1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v1
const-string v2, "notnull"
invoke-interface {p0, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v2
const-string v3, "pk"
invoke-interface {p0, v3}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v3
:goto_3d
invoke-interface {p0}, Landroid/database/Cursor;->moveToNext()Z
move-result v4
if-eqz v4, :cond_61
invoke-interface {p0, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v4
invoke-interface {p0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v5
invoke-interface {p0, v2}, Landroid/database/Cursor;->getInt(I)I
move-result v6
if-eqz v6, :cond_53
const/4 v6, 0x1
goto :goto_54
:cond_53
const/4 v6, 0x0
:goto_54
invoke-interface {p0, v3}, Landroid/database/Cursor;->getInt(I)I
move-result v7
new-instance v8, Landroidx/room/p/d$a;
invoke-direct {v8, v4, v5, v6, v7}, Landroidx/room/p/d$a;-><init>(Ljava/lang/String;Ljava/lang/String;ZI)V
invoke-interface {p1, v4, v8}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_60
.catchall {:try_start_1f .. :try_end_60} :catchall_65
goto :goto_3d
:cond_61
invoke-interface {p0}, Landroid/database/Cursor;->close()V
return-object p1
:catchall_65
move-exception p1
invoke-interface {p0}, Landroid/database/Cursor;->close()V
goto :goto_6b
:goto_6a
throw p1
:goto_6b
goto :goto_6a
.end method
.method private static c(Landroid/database/Cursor;)Ljava/util/List;
.registers 13
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/database/Cursor;",
")",
"Ljava/util/List<",
"Landroidx/room/p/d$c;",
">;"
}
.end annotation
const-string v0, "id"
invoke-interface {p0, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v0
const-string v1, "seq"
invoke-interface {p0, v1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v1
const-string v2, "from"
invoke-interface {p0, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v2
const-string v3, "to"
invoke-interface {p0, v3}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v3
invoke-interface {p0}, Landroid/database/Cursor;->getCount()I
move-result v4
new-instance v5, Ljava/util/ArrayList;
invoke-direct {v5}, Ljava/util/ArrayList;-><init>()V
const/4 v6, 0x0
:goto_22
if-ge v6, v4, :cond_42
invoke-interface {p0, v6}, Landroid/database/Cursor;->moveToPosition(I)Z
new-instance v7, Landroidx/room/p/d$c;
invoke-interface {p0, v0}, Landroid/database/Cursor;->getInt(I)I
move-result v8
invoke-interface {p0, v1}, Landroid/database/Cursor;->getInt(I)I
move-result v9
invoke-interface {p0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v10
invoke-interface {p0, v3}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v11
invoke-direct {v7, v8, v9, v10, v11}, Landroidx/room/p/d$c;-><init>(IILjava/lang/String;Ljava/lang/String;)V
invoke-interface {v5, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
add-int/lit8 v6, v6, 0x1
goto :goto_22
:cond_42
invoke-static {v5}, Ljava/util/Collections;->sort(Ljava/util/List;)V
return-object v5
.end method
.method private static d(Le/u/a/b;Ljava/lang/String;)Ljava/util/Set;
.registers 20
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Le/u/a/b;",
"Ljava/lang/String;",
")",
"Ljava/util/Set<",
"Landroidx/room/p/d$b;",
">;"
}
.end annotation
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "PRAGMA foreign_key_list(`"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-object/from16 v2, p1
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v2, "`)"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
move-object/from16 v2, p0
invoke-interface {v2, v1}, Le/u/a/b;->H(Ljava/lang/String;)Landroid/database/Cursor;
move-result-object v1
:try_start_23
const-string v2, "id"
invoke-interface {v1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v2
const-string v3, "seq"
invoke-interface {v1, v3}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v3
const-string v4, "table"
invoke-interface {v1, v4}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v4
const-string v5, "on_delete"
invoke-interface {v1, v5}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v5
const-string v6, "on_update"
invoke-interface {v1, v6}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v6
invoke-static {v1}, Landroidx/room/p/d;->c(Landroid/database/Cursor;)Ljava/util/List;
move-result-object v7
invoke-interface {v1}, Landroid/database/Cursor;->getCount()I
move-result v8
const/4 v9, 0x0
:goto_4a
if-ge v9, v8, :cond_a1
invoke-interface {v1, v9}, Landroid/database/Cursor;->moveToPosition(I)Z
invoke-interface {v1, v3}, Landroid/database/Cursor;->getInt(I)I
move-result v10
if-eqz v10, :cond_56
goto :goto_9e
:cond_56
invoke-interface {v1, v2}, Landroid/database/Cursor;->getInt(I)I
move-result v10
new-instance v15, Ljava/util/ArrayList;
invoke-direct {v15}, Ljava/util/ArrayList;-><init>()V
new-instance v14, Ljava/util/ArrayList;
invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
invoke-interface {v7}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v11
:cond_68
:goto_68
invoke-interface {v11}, Ljava/util/Iterator;->hasNext()Z
move-result v12
if-eqz v12, :cond_83
invoke-interface {v11}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v12
check-cast v12, Landroidx/room/p/d$c;
iget v13, v12, Landroidx/room/p/d$c;->e:I
if-ne v13, v10, :cond_68
iget-object v13, v12, Landroidx/room/p/d$c;->g:Ljava/lang/String;
invoke-interface {v15, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
iget-object v12, v12, Landroidx/room/p/d$c;->h:Ljava/lang/String;
invoke-interface {v14, v12}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_68
:cond_83
new-instance v10, Landroidx/room/p/d$b;
invoke-interface {v1, v4}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v12
invoke-interface {v1, v5}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v13
invoke-interface {v1, v6}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v16
move-object v11, v10
move-object/from16 v17, v14
move-object/from16 v14, v16
move-object/from16 v16, v17
invoke-direct/range {v11 .. v16}, Landroidx/room/p/d$b;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/List;)V
invoke-interface {v0, v10}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
:try_end_9e
.catchall {:try_start_23 .. :try_end_9e} :catchall_a5
:goto_9e
add-int/lit8 v9, v9, 0x1
goto :goto_4a
:cond_a1
invoke-interface {v1}, Landroid/database/Cursor;->close()V
return-object v0
:catchall_a5
move-exception v0
invoke-interface {v1}, Landroid/database/Cursor;->close()V
goto :goto_ab
:goto_aa
throw v0
:goto_ab
goto :goto_aa
.end method
.method private static e(Le/u/a/b;Ljava/lang/String;Z)Landroidx/room/p/d$d;
.registers 9
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "PRAGMA index_xinfo(`"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "`)"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-interface {p0, v0}, Le/u/a/b;->H(Ljava/lang/String;)Landroid/database/Cursor;
move-result-object p0
:try_start_1a
const-string v0, "seqno"
invoke-interface {p0, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v0
const-string v1, "cid"
invoke-interface {p0, v1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v1
const-string v2, "name"
invoke-interface {p0, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
move-result v2
const/4 v3, -0x1
if-eq v0, v3, :cond_6f
if-eq v1, v3, :cond_6f
if-ne v2, v3, :cond_34
goto :goto_6f
:cond_34
new-instance v3, Ljava/util/TreeMap;
invoke-direct {v3}, Ljava/util/TreeMap;-><init>()V
:goto_39
invoke-interface {p0}, Landroid/database/Cursor;->moveToNext()Z
move-result v4
if-eqz v4, :cond_56
invoke-interface {p0, v1}, Landroid/database/Cursor;->getInt(I)I
move-result v4
if-gez v4, :cond_46
goto :goto_39
:cond_46
invoke-interface {p0, v0}, Landroid/database/Cursor;->getInt(I)I
move-result v4
invoke-interface {p0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v5
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
invoke-virtual {v3, v4, v5}, Ljava/util/TreeMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_39
:cond_56
new-instance v0, Ljava/util/ArrayList;
invoke-virtual {v3}, Ljava/util/TreeMap;->size()I
move-result v1
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
invoke-virtual {v3}, Ljava/util/TreeMap;->values()Ljava/util/Collection;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
new-instance v1, Landroidx/room/p/d$d;
invoke-direct {v1, p1, p2, v0}, Landroidx/room/p/d$d;-><init>(Ljava/lang/String;ZLjava/util/List;)V
:try_end_6b
.catchall {:try_start_1a .. :try_end_6b} :catchall_74
invoke-interface {p0}, Landroid/database/Cursor;->close()V
return-object v1
:cond_6f
:goto_6f
const/4 p1, 0x0
invoke-interface {p0}, Landroid/database/Cursor;->close()V
return-object p1
:catchall_74
move-exception p1
invoke-interfa