package Ġio . stan wood . m hw db . feature . arm ors . dat apro vider Ċ Ċ import Ġio . reactivex . dis pos ables . Composite Disposable Ċ import Ġio . reactivex . rx kotlin . plus Assign Ċ import Ġio . reactivex . subjects . Behavior Subject Ċ import Ġio . stan wood . framework . arch . core . View DataProvider Ċ import Ġio . stan wood . framework . arch . core . rx . Resource Transformer Ċ import Ġio . stan wood . m hw db . inter actor . Get Armor ById Interactor Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠArm or Details DataProvider Impl Ġ@ Inject Ġconstructor ( val Ġinter actor : ĠGet Armor ById Interactor ) Ġ: ĠView DataProvider (), ĊĠĠĠ ĠArm or Details DataProvider Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġdis posable : ĠComposite Disposable Ġ= ĠComposite Disposable () ĊĠĠĠ Ġprivate Ġval Ġid Subject Ġ= ĠBehavior Subject . create < Long >() ĊĠĠĠ Ġoverride Ġvar Ġarm or Id : ĠLong Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Subject . onNext ( field ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġval Ġdata Ġ= ĊĠĠĠĠĠĠĠ Ġid Subject . switch Map Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinter actor . get Armor ( it ). compose ( Resource Transformer . from Single ()). to Observable () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. replay ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. auto Connect ( 1 ) Ġ{ Ġdis posable Ġ+= Ġit Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Cle ared () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Cle ared () ĊĠĠĠĠĠĠĠ Ġdis posable . dispose () ĊĠĠĠ Ġ} Ċ }