package Ġcom . pet it pre . easy be lo te . model Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . room .* Ċ import Ġcom . pet it pre . easy be lo te . utils . Converters Ċ Ċ @ Database ( entities Ġ= Ġ[ Game :: class , ĠRound :: class ], Ġversion Ġ= Ġ 1 , Ġexport Schema Ġ= Ġfalse ) Ċ @ Type Converters ( Converters :: class ) Ċ abstract Ġclass ĠApp Database Ġ: ĠRoom Database () Ġ{ ĊĠĠĠ Ġabstract Ġfun Ġgame Dao (): ĠGame Dao Ċ } Ċ Ċ @ Dao Ċ interface ĠGame Dao Ġ{ ĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM ĠGame ") ĊĠĠĠ Ġfun ĠgetAll (): ĠLive Data < List < Game >> ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM ĠGame Ġwhere Ġid Ġ= Ġ: id ") ĊĠĠĠ Ġfun Ġget Full Game ( id : ĠLong ): ĠLive Data < Game With Round > ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM ĠGame Ġwhere Ġid Ġ= Ġ: id ") ĊĠĠĠ Ġfun Ġget ( id : ĠLong ): ĠGame ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM ĠGame Ġorder Ġby ĠID ĠDESC Ġlimit Ġ 1 ") ĊĠĠĠ Ġfun ĠgetLast (): ĠGame ? ĊĊĠĠĠ Ġ@ Query (" SELECT Ġ* ĠFROM ĠRound Ġwhere Ġid Ġ= Ġ: id ") ĊĠĠĠ Ġfun Ġget Round ( id : ĠLong ): ĠRound ? ĊĊĠĠĠ Ġ@ Insert ( on Conflict Ġ= ĠOn Conflict Strategy . REPLACE ) ĊĠĠĠ Ġfun Ġinsert ( game : ĠGame ): ĠLong ĊĊĠĠĠ Ġ@ Insert ( on Conflict Ġ= ĠOn Conflict Strategy . REPLACE ) ĊĠĠĠ Ġfun Ġinsert ( round : ĠRound ) Ċ Ċ }