From bfa4cd58a707c1eff0d051575871155e22709794 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Mon, 2 Nov 2020 01:47:13 +0530 Subject: [PATCH] app: setup Roomigrant Signed-off-by: Harsh Shandilya --- .../java/dev/msfjarvis/lobsters/data/source/PostsDatabase.kt | 2 ++ .../java/dev/msfjarvis/lobsters/injection/PersistenceModule.kt | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/dev/msfjarvis/lobsters/data/source/PostsDatabase.kt b/app/src/main/java/dev/msfjarvis/lobsters/data/source/PostsDatabase.kt index 54f6425c..7e5d5499 100644 --- a/app/src/main/java/dev/msfjarvis/lobsters/data/source/PostsDatabase.kt +++ b/app/src/main/java/dev/msfjarvis/lobsters/data/source/PostsDatabase.kt @@ -3,6 +3,7 @@ package dev.msfjarvis.lobsters.data.source import androidx.room.Database import androidx.room.RoomDatabase import androidx.room.TypeConverters +import dev.matrix.roomigrant.GenerateRoomMigrations import dev.msfjarvis.lobsters.data.model.LobstersEntity import dev.msfjarvis.lobsters.data.model.SavedLobstersEntity @@ -17,6 +18,7 @@ import dev.msfjarvis.lobsters.data.model.SavedLobstersEntity @TypeConverters( LobstersApiTypeConverters::class, ) +@GenerateRoomMigrations abstract class PostsDatabase : RoomDatabase() { abstract fun postsDao(): PostsDao abstract fun savedPostsDao(): SavedPostsDao diff --git a/app/src/main/java/dev/msfjarvis/lobsters/injection/PersistenceModule.kt b/app/src/main/java/dev/msfjarvis/lobsters/injection/PersistenceModule.kt index 622ebdff..b13e523e 100644 --- a/app/src/main/java/dev/msfjarvis/lobsters/injection/PersistenceModule.kt +++ b/app/src/main/java/dev/msfjarvis/lobsters/injection/PersistenceModule.kt @@ -8,6 +8,7 @@ import dagger.hilt.InstallIn import dagger.hilt.android.components.ActivityComponent import dagger.hilt.android.qualifiers.ApplicationContext import dev.msfjarvis.lobsters.data.source.PostsDatabase +import dev.msfjarvis.lobsters.data.source.PostsDatabase_Migrations @Module @InstallIn(ActivityComponent::class) @@ -16,7 +17,7 @@ object PersistenceModule { @Provides fun providePostsDatabase(@ApplicationContext context: Context): PostsDatabase { return Room.databaseBuilder(context, PostsDatabase::class.java, "posts.db") - .fallbackToDestructiveMigration() + .addMigrations(*PostsDatabase_Migrations.build()) .build() } }