package Ġcom . lu uu . se ven . db Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . room . Database Ċ import Ġandroidx . room . Room Ċ import Ġandroidx . room . Room Database Ċ import Ġcom . lu uu . se ven . Com ic Application Ċ import Ġcom . lu uu . se ven . bean . Collect Bean Ċ import Ġcom . lu uu . se ven . bean . Read History Bean Ċ Ċ @ Database ( entities Ġ= Ġ[ Read History Bean :: class , ĠCollect Bean :: class ], Ġversion Ġ= Ġ 1 , Ġexport Schema Ġ= Ġfalse ) Ċ abstract Ġclass ĠApp Database Ġ: ĠRoom Database () Ġ{ ĊĊĠĠĠ Ġabstract Ġfun Ġhistory Dao (): ĠHistory Read Dao ĊĠĠĠ Ġabstract Ġfun Ġcollection Dao (): ĠCollection Dao ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval Ġdatabase Name Ġ= Ġ" com ic - db " ĊĊĠĠĠĠĠĠĠ Ġ@ Volatile Ġprivate Ġvar Ġinstance : ĠApp Database ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġfun ĠgetInstance (): ĠApp Database Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġinstance Ġ?: Ġsynchronized ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinstance Ġ?: Ġbuild Database ( Com ic Application . m App ). also Ġ{ Ġinstance Ġ= Ġit Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġbuild Database ( context : ĠContext ): ĠApp Database Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠRoom . database Builder ( context , ĠApp Database :: class . java , Ġdatabase Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. fallback To Dest ruct ive Migration (). build () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }