package Ġcom . android . hog w arts enc ic lop edia . database Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . room . Room Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠChar acters Local DataSource Ġ@ Inject Ġconstructor ( private Ġval Ġapplication Context : ĠContext ) Ġ: ĠLocal DataSource < Database Model > Ġ{ ĊĠĠĠ Ġprivate Ġval Ġdatabase Ġ= ĠRoom . database Builder ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapplication Context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠChar acters Database :: class . java , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" characters " ĊĠĠĠĠĠĠĠ Ġ). add Migrations ( M IG RATION _ 1 _ 2 ) ĊĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġinsert All ( items : ĠCollection < Database Model >) Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠĠĠĠĠ Ġdatabase . characters Dao . insert All ( items Ġas ĠList < Character Entity >) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetAll (): ĠLive Data < List < Character Entity >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdatabase . characters Dao . getAll () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġget ById ( id : ĠAny ): ĠCharacter Entity Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdatabase . characters Dao . getById ( id Ġas ĠString ) ĊĠĠĠ Ġ} Ċ }