package Ġcom . su q ir . was ais chedule . logic . database Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . room . Database Ċ import Ġandroidx . room . Room Ċ import Ġandroidx . room . Room Database Ċ import Ġcom . su q ir . was ais chedule . logic . bean .* Ċ import Ġcom . su q ir . was ais chedule . logic . dao .* Ċ Ċ @ Database ( entities Ġ= Ġ[ Course Base Bean :: class , ĠCourse Detail Bean :: class , ĠApp Widget Bean :: class , ĠTime Detail Bean :: class , ĊĠĠĠ ĠTime Table Bean :: class , ĠTable Bean :: class ], ĊĠĠĠĠĠĠĠ Ġversion Ġ= Ġ 1 , Ġexport Schema Ġ= Ġfalse ) Ċ Ċ abstract Ġclass ĠApp Database Ġ: ĠRoom Database () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġvar ĠINSTANCE : ĠApp Database ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġfun Ġget Database ( context : ĠContext ): ĠApp Database Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( INSTANCE Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsynchronized ( App Database :: class . java ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( INSTANCE Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠINSTANCE Ġ= ĠRoom . database Builder ( context . application Context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp Database :: class . java , Ġ" was ai ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. allow MainThread Queries () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠINSTANCE !! ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġcourse Dao (): ĠCourse Dao ĊĊĠĠĠ Ġabstract Ġfun Ġapp Widget Dao (): ĠApp Widget Dao ĊĊĠĠĠ Ġabstract Ġfun Ġtime Table Dao (): ĠTime Table Dao ĊĊĠĠĠ Ġabstract Ġfun Ġtime Detail Dao (): ĠTime Detail Dao ĊĊĠĠĠ Ġabstract Ġfun Ġtable Dao (): ĠTable Dao Ċ }