package Ġcom . example . nasa _ mars _ api _ service . database . dao Ċ Ċ import Ġandroidx . room .* Ċ import Ġcom . example . nasa _ mars _ api _ service . database . dao . Favorite Photo Dao . Companion . TABLE _ NAME Ċ import Ġcom . example . nasa _ mars _ api _ service . database . entities . Favorite Photo DB Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠMat vey ĠPop ov . Ċ Ġ* ĠDate : Ġ 0 4 . 0 1 . 2 0 2 1 Ċ Ġ* ĠTime : Ġ 0 : 3 4 Ċ Ġ* ĠProject : ĠN ASA - M ars - API - Service Ċ Ġ*/ Ċ @ Dao Ċ interface ĠF avorite Photo Dao Ġ{ ĊĊĠĠĠ Ġ@ Insert ( on Conflict Ġ= ĠOn Conflict Strategy . REPLACE ) ĊĠĠĠ Ġsuspend Ġfun Ġinsert Photo ( photo : ĠF avorite Photo DB ) ĊĊĠĠĠ Ġ@ Insert ( on Conflict Ġ= ĠOn Conflict Strategy . REPLACE ) ĊĠĠĠ Ġsuspend Ġfun Ġinsert Photos ( photos : ĠList < Favorite Photo DB >) ĊĊĠĠĠ Ġ@ Delete ĊĠĠĠ Ġsuspend Ġfun Ġdelete Photo ( photo : ĠF avorite Photo DB ) ĊĊĠĠĠ Ġ@ Query (" DELETE ĠFROM Ġ$ TABLE _ NAME ") ĊĠĠĠ Ġsuspend Ġfun Ġdelete All () ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM Ġ$ TABLE _ NAME ") ĊĠĠĠ Ġsuspend Ġfun ĠgetAll Photos (): ĠList < Favorite Photo DB > ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM Ġ$ TABLE _ NAME ĠWHERE Ġid Ġ= Ġ: id ĠLIMIT Ġ 1 ") ĊĠĠĠ Ġsuspend Ġfun Ġget Photo ( id : ĠInt ): ĠF avorite Photo DB ĊĊĠĠĠ Ġ@ Query (" SELECT ĠEXISTS ( SELECT Ġid ĠFROM Ġ$ TABLE _ NAME ĠWHERE Ġid Ġ= Ġ: id )") ĊĠĠĠ Ġsuspend Ġfun Ġis Photo Exists ( id : ĠInt ): ĠBoolean ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTABLE _ NAME Ġ= Ġ" favorite _ photo _ table " ĊĠĠĠ Ġ} Ċ }