package androidx.work.impl; import androidx.room.migration.Migration; import androidx.sqlite.db.SupportSQLiteDatabase; import androidx.work.OverwritingInputMerger; import kotlin.jvm.internal.Intrinsics; import kotlin.text.StringsKt__IndentKt; /* loaded from: classes.dex */ public final class Migration_16_17 extends Migration { public static final Migration_16_17 INSTANCE = new Migration_16_17(); private Migration_16_17() { super(16, 17); } @Override // androidx.room.migration.Migration public void migrate(SupportSQLiteDatabase db) { String trimIndent; Intrinsics.checkNotNullParameter(db, "db"); trimIndent = StringsKt__IndentKt.trimIndent("UPDATE WorkSpec\n SET input_merger_class_name = '" + OverwritingInputMerger.class.getName() + "'\n WHERE input_merger_class_name IS NULL\n "); db.execSQL(trimIndent); db.execSQL("CREATE TABLE IF NOT EXISTS `_new_WorkSpec` (\n `id` TEXT NOT NULL,\n `state` INTEGER NOT NULL,\n `worker_class_name` TEXT NOT NULL,\n `input_merger_class_name` TEXT NOT NULL,\n `input` BLOB NOT NULL,\n `output` BLOB NOT NULL,\n `initial_delay` INTEGER NOT NULL,\n `interval_duration` INTEGER NOT NULL,\n `flex_duration` INTEGER NOT NULL,\n `run_attempt_count` INTEGER NOT NULL,\n `backoff_policy` INTEGER NOT NULL,\n `backoff_delay_duration` INTEGER NOT NULL,\n `last_enqueue_time` INTEGER NOT NULL,\n `minimum_retention_duration` INTEGER NOT NULL,\n `schedule_requested_at` INTEGER NOT NULL,\n `run_in_foreground` INTEGER NOT NULL,\n `out_of_quota_policy` INTEGER NOT NULL,\n `period_count` INTEGER NOT NULL DEFAULT 0,\n `generation` INTEGER NOT NULL DEFAULT 0,\n `required_network_type` INTEGER NOT NULL,\n `requires_charging` INTEGER NOT NULL,\n `requires_device_idle` INTEGER NOT NULL,\n `requires_battery_not_low` INTEGER NOT NULL,\n `requires_storage_not_low` INTEGER NOT NULL,\n `trigger_content_update_delay` INTEGER NOT NULL,\n `trigger_max_content_delay` INTEGER NOT NULL,\n `content_uri_triggers` BLOB NOT NULL,\n PRIMARY KEY(`id`)\n )"); db.execSQL("INSERT INTO `_new_WorkSpec` (\n `id`,\n `state`,\n `worker_class_name`,\n `input_merger_class_name`,\n `input`,\n `output`,\n `initial_delay`,\n `interval_duration`,\n `flex_duration`,\n `run_attempt_count`,\n `backoff_policy`,\n `backoff_delay_duration`,\n `last_enqueue_time`,\n `minimum_retention_duration`,\n `schedule_requested_at`,\n `run_in_foreground`,\n `out_of_quota_policy`,\n `period_count`,\n `generation`,\n `required_network_type`,\n `requires_charging`,\n `requires_device_idle`,\n `requires_battery_not_low`,\n `requires_storage_not_low`,\n `trigger_content_update_delay`,\n `trigger_max_content_delay`,\n `content_uri_triggers`\n ) SELECT\n `id`,\n `state`,\n `worker_class_name`,\n `input_merger_class_name`,\n `input`,\n `output`,\n `initial_delay`,\n `interval_duration`,\n `flex_duration`,\n `run_attempt_count`,\n `backoff_policy`,\n `backoff_delay_duration`,\n `last_enqueue_time`,\n `minimum_retention_duration`,\n `schedule_requested_at`,\n `run_in_foreground`,\n `out_of_quota_policy`,\n `period_count`,\n `generation`,\n `required_network_type`,\n `requires_charging`,\n `requires_device_idle`,\n `requires_battery_not_low`,\n `requires_storage_not_low`,\n `trigger_content_update_delay`,\n `trigger_max_content_delay`,\n `content_uri_triggers`\n FROM `WorkSpec`"); db.execSQL("DROP TABLE `WorkSpec`"); db.execSQL("ALTER TABLE `_new_WorkSpec` RENAME TO `WorkSpec`"); db.execSQL("CREATE INDEX IF NOT EXISTS `index_WorkSpec_schedule_requested_at`ON `WorkSpec` (`schedule_requested_at`)"); db.execSQL("CREATE INDEX IF NOT EXISTS `index_WorkSpec_last_enqueue_time` ON`WorkSpec` (`last_enqueue_time`)"); } }