package Ġcom . an tour age . we aver lib . other . room Ċ Ċ import Ġandroidx . room .* Ċ import Ġcom . an tour age . we aver lib . other . models . Video ĊĊ Ċ @ Dao Ċ internal Ġinterface ĠVideo Stop Time Dao Ġ{ ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM Ġvideos ĠORDER ĠBY Ġid ĠDESC ") ĊĠĠĠ Ġsuspend Ġfun ĠgetAll Stop Time Records (): ĠList < Video > ĊĊĠĠĠ Ġ@ Query (" SELECT Ġstop Time Millis ĠFROM Ġvideos ĠWHERE Ġid Ġ== Ġ: vod Id ") ĊĠĠĠ Ġsuspend Ġfun Ġget Stop Time ById ( vod Id : ĠInt ): ĠLong ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM Ġvideos ĠWHERE Ġid Ġ== Ġ: vod Id ") ĊĠĠĠ Ġsuspend Ġfun Ġget Video ById ( vod Id : ĠInt ): ĠVideo ? ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠUsed Ġto Ġcheck Ġwhether Ġtable Ġhas Ġrespective Ġv od ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Query (" SELECT ĠCOUNT (*) ĠFROM Ġvideos ĠWHERE Ġid Ġ== Ġ: vod Id ") ĊĠĠĠ Ġsuspend Ġfun Ġget Count Of Stop Time ById ( vod Id : ĠInt ): ĠInt ĊĊĠĠĠ Ġ@ Query (" DELETE ĠFROM Ġvideos ĠWHERE ĠstartDate Ġ< Ġ: expiration Date ") ĊĠĠĠ Ġsuspend Ġfun Ġdelete By Expiration Time ( expiration Date : ĠLong ) Ġ: ĠInt ĊĊĠĠĠ Ġ@ Query (" UPDATE Ġvideos ĠSET Ġstop Time Millis Ġ= Ġ: stop Time Millis ĠWHERE Ġid Ġ== Ġ: vod Id ") ĊĠĠĠ Ġsuspend Ġfun Ġupdate Stop Time Millis ( stop Time Millis : ĠLong , Ġv od Id : Int ) ĊĊĠĠĠ Ġ@ Query (" UPDATE Ġvideos ĠSET Ġnickname Ġ= Ġ: nickname , Ġtext Ġ= Ġ: text ĠWHERE Ġid Ġ== Ġ: vod Id ") ĊĠĠĠ Ġsuspend Ġfun Ġupdate Last Message ( vod Id : Int , Ġnickname : ĠString , Ġtext : ĠString ) ĊĊĠĠĠ Ġ@ Query (" DELETE ĠFROM Ġvideos ") ĊĠĠĠ Ġsuspend Ġfun Ġclear Videos () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠInsert Ġa Ġrecord Ġin Ġthe Ġdatabase . ĊĠĠĠĠ Ġ* Ġ Ġ@ return ĠThe ĠSQLite Ġrow Ġid ĊĠĠĠĠ Ġ* ĠIf Ġthe Ġrecord Ġalready Ġexists Ġreturns Ġ- 1 Ġand Ġdoes Ġnothing ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Insert ( on Conflict Ġ= ĠOn Conflict Strategy . IGNORE ) ĊĠĠĠ Ġsuspend Ġfun Ġinsert Video IfNot Exists ( video : ĠVideo ): ĠLong ĊĊĠĠĠ Ġ@ Transaction ĊĠĠĠ Ġsuspend Ġfun Ġupsert Stop Time ( video : ĠVideo ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠresultCode Ġ= Ġinsert Video IfNot Exists ( video ) ĊĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== Ġ- 1 L ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Stop Time Millis ( video . stop Time Millis , Ġvideo . id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Transaction ĊĠĠĠ Ġsuspend Ġfun Ġupsert Last Message ( video : ĠVideo ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠresultCode Ġ= Ġinsert Video IfNot Exists ( video ) ĊĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== Ġ- 1 L ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Stop Time Millis ( video . stop Time Millis , Ġvideo . id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }