Заготовка
This commit is contained in:
33
client-mobile/chats/data/local/database/AppDatabase.kt
Normal file
33
client-mobile/chats/data/local/database/AppDatabase.kt
Normal file
@@ -0,0 +1,33 @@
|
||||
package chats.data.local.database
|
||||
|
||||
import androidx.room.Database
|
||||
import androidx.room.RoomDatabase
|
||||
import androidx.room.TypeConverters
|
||||
import chats.data.local.dao.ChatDao
|
||||
import chats.data.local.dao.MessageDao
|
||||
import chats.data.local.dao.UserProfileDao
|
||||
|
||||
/**
|
||||
* Room Database для локального хранения данных мессенджера
|
||||
* Реализует паттерн Single Source of Truth
|
||||
*/
|
||||
@Database(
|
||||
entities = [
|
||||
MessageEntity::class,
|
||||
ChatEntity::class,
|
||||
UserProfileEntity::class
|
||||
],
|
||||
version = 1,
|
||||
exportSchema = false
|
||||
)
|
||||
@TypeConverters(MessageStatusConverter::class)
|
||||
abstract class AppDatabase : RoomDatabase() {
|
||||
|
||||
abstract fun messageDao(): MessageDao
|
||||
abstract fun chatDao(): ChatDao
|
||||
abstract fun userProfileDao(): UserProfileDao
|
||||
|
||||
companion object {
|
||||
const val DATABASE_NAME = "knot_messenger.db"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user