.class public final Landroidx/work/impl/Migration_15_16; .super Landroidx/room/migration/Migration; .source "SourceFile" # static fields .field public static final INSTANCE:Landroidx/work/impl/Migration_15_16; # direct methods .method static constructor ()V .locals 1 new-instance v0, Landroidx/work/impl/Migration_15_16; invoke-direct {v0}, Landroidx/work/impl/Migration_15_16;->()V sput-object v0, Landroidx/work/impl/Migration_15_16;->INSTANCE:Landroidx/work/impl/Migration_15_16; return-void .end method .method private constructor ()V .locals 2 const/16 v0, 0xf const/16 v1, 0x10 .line 259 invoke-direct {p0, v0, v1}, Landroidx/room/migration/Migration;->(II)V return-void .end method # virtual methods .method public migrate(Landroidx/sqlite/db/SupportSQLiteDatabase;)V .locals 1 const-string v0, "db" invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "DELETE FROM SystemIdInfo WHERE work_spec_id IN (SELECT work_spec_id FROM SystemIdInfo LEFT JOIN WorkSpec ON work_spec_id = id WHERE WorkSpec.id IS NULL)" .line 264 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V const-string v0, "ALTER TABLE `WorkSpec` ADD COLUMN `generation` INTEGER NOT NULL DEFAULT 0" .line 270 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V const-string v0, "CREATE TABLE IF NOT EXISTS `_new_SystemIdInfo` (\n `work_spec_id` TEXT NOT NULL, \n `generation` INTEGER NOT NULL DEFAULT 0, \n `system_id` INTEGER NOT NULL, \n PRIMARY KEY(`work_spec_id`, `generation`), \n FOREIGN KEY(`work_spec_id`) REFERENCES `WorkSpec`(`id`) \n ON UPDATE CASCADE ON DELETE CASCADE )" .line 271 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V const-string v0, "INSERT INTO `_new_SystemIdInfo` (`work_spec_id`,`system_id`) SELECT `work_spec_id`,`system_id` FROM `SystemIdInfo`" .line 282 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V const-string v0, "DROP TABLE `SystemIdInfo`" .line 286 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V const-string v0, "ALTER TABLE `_new_SystemIdInfo` RENAME TO `SystemIdInfo`" .line 287 invoke-interface {p1, v0}, Landroidx/sqlite/db/SupportSQLiteDatabase;->execSQL(Ljava/lang/String;)V return-void .end method