From 4e72fbceae6a1cde065b39d57e096df3505eaa48 Mon Sep 17 00:00:00 2001 From: Jaehwa Noh Date: Thu, 1 Jan 2026 18:07:10 +0900 Subject: [PATCH] Add queries: insert, update, delete. Change-Id: I68d5a3d77a5f0d1fdc1a84a6fbb1221a674d9793 --- .../core/database/dao/NewsResourceFtsDao.kt | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/dao/NewsResourceFtsDao.kt b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/dao/NewsResourceFtsDao.kt index 86cc5529e..7d61406f4 100644 --- a/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/dao/NewsResourceFtsDao.kt +++ b/core/database/src/main/kotlin/com/google/samples/apps/nowinandroid/core/database/dao/NewsResourceFtsDao.kt @@ -31,6 +31,41 @@ interface NewsResourceFtsDao { @Insert(onConflict = OnConflictStrategy.REPLACE) suspend fun insertAll(newsResources: List) + @Insert(onConflict = OnConflictStrategy.REPLACE) + suspend fun insert(newsResource: NewsResourceFtsEntity) + + @Query( + """ + DELETE + FROM newsResourcesFts + WHERE newsResourceId = :newsResourceId + """, + ) + suspend fun deleteById(newsResourceId: String) + + @Query( + """ + SELECT * + FROM newsResourcesFts + WHERE newsResourceId = :newsResourceId + """, + ) + suspend fun getFtsEntitiesById(newsResourceId: String): List + + @Query( + """ + UPDATE newsResourcesFts + SET title = :title, + content = :content + WHERE newsResourceId = :newsResourceId + """, + ) + suspend fun update( + title: String, + content: String, + newsResourceId: String, + ) + @Query("SELECT newsResourceId FROM newsResourcesFts WHERE newsResourcesFts MATCH :query") fun searchAllNewsResources(query: String): Flow>