package Ġnam . tran . data . inter actor . rss Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġnam . tran . data . database . Db Provider Ċ import Ġnam . tran . data . executor . App Executors Ċ import Ġnam . tran . data . local . IP reference Ċ import Ġnam . tran . data . model . Article Ċ import Ġnam . tran . data . model . core . state . Listing Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠR ss UseCase Ġ@ Inject Ġinternal Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġapp Executors : ĠApp Executors , ĊĠĠĠ Ġprivate Ġval Ġdb Provider : ĠDb Provider , ĊĠĠĠ Ġprivate Ġval Ġi Preference : ĠIP reference Ċ ) Ġ: ĠIR ss Use C ae Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġr ss Data Bound : ĠR ss Data Bound ĊĊĠĠĠ Ġoverride Ġfun Ġinit Data Bound (): ĠLive Data < Listing < List < Article >>> Ġ{ ĊĠĠĠĠĠĠĠ Ġr ss Data Bound Ġ= ĠR ss Data Bound ( app Executors ) ĊĠĠĠĠĠĠĠ Ġr ss Data Bound . db Provider Ġ= Ġdb Provider ĊĠĠĠĠĠĠĠ Ġr ss Data Bound . load From Db () ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠMutable LiveData < Listing < List < Article >> >() ĊĠĠĠĠĠĠĠ Ġresult . post Value ( Listing ( rss Data Bound . result , Ġr ss Data Bound . state )) ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrefresh () Ġ{ ĊĠĠĠĠĠĠĠ Ġr ss Data Bound . on Refresh () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġlogout () Ġ{ ĊĠĠĠĠĠĠĠ Ġi Preference . login ( false ) ĊĠĠĠĠĠĠĠ Ġapp Executors . disk IO (). execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdb Provider . article Access (). delete () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }