package Ġcom . db flow 5 . reactiv est ream s . structure Ċ Ċ import Ġcom . db flow 5 . adapter . Model Adapter Ċ import Ġcom . db flow 5 . config . model Adapter Ċ import Ġcom . db flow 5 . database . Database Wrapper Ċ import Ġio . reactivex . Comp letable Ċ import Ġio . reactivex . Comp letable . from Callable Ċ import Ġio . reactivex . Single Ċ Ċ /** Ċ Ġ* ĠDescription : ĠWrap s Ġmost Ġ[ Model Adapter ] Ġmodification Ġoperations Ġinto ĠRX - style Ġconstructs . Ċ Ġ*/ Ċ class ĠRX Model Adapter < T Ġ: ĠAny > Ġinternal Ġconstructor ( private Ġval Ġmodel Adapter : ĠModel Adapter < T >) ĊĠĠĠ Ġ: ĠRX Retrie val Adapter < T >( model Adapter ) Ġ{ ĊĊĠĠĠ Ġconstructor ( table : ĠClass < T >) Ġ: Ġthis ( table . model Adapter ) ĊĊĠĠĠ Ġfun Ġsave ( model : ĠT , Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠSingle < Boolean > Ġ= ĊĠĠĠĠĠĠĠ ĠSingle . from Callable Ġ{ Ġmodel Adapter . save ( model , Ġdatabase Wrapper ) Ġ} ĊĊĠĠĠ Ġfun Ġsave All ( models : ĠCollection < T >, Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠComp letable Ġ= ĊĠĠĠĠĠĠĠ Ġfrom Callable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel Adapter . save All ( models , Ġdatabase Wrapper ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġinsert ( model : ĠT , Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠSingle < Long > Ġ= ĊĠĠĠĠĠĠĠ ĠSingle . from Callable Ġ{ Ġmodel Adapter . insert ( model , Ġdatabase Wrapper ) Ġ} ĊĊĠĠĠ Ġfun Ġinsert All ( models : ĠCollection < T >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠComp letable Ġ= Ġfrom Callable Ġ{ ĊĠĠĠĠĠĠĠ Ġmodel Adapter . insert All ( models , Ġdatabase Wrapper ) ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate ( model : ĠT , Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠSingle < Boolean > Ġ= ĊĠĠĠĠĠĠĠ ĠSingle . from Callable Ġ{ Ġmodel Adapter . update ( model , Ġdatabase Wrapper ) Ġ} ĊĊĠĠĠ Ġfun Ġupdate All ( models : ĠCollection < T >, Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠComp letable Ġ= ĊĠĠĠĠĠĠĠ Ġfrom Callable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel Adapter . update All ( models , Ġdatabase Wrapper ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġdelete ( model : ĠT , Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠSingle < Boolean > Ġ= ĊĠĠĠĠĠĠĠ ĠSingle . from Callable Ġ{ Ġmodel Adapter . delete ( model , Ġdatabase Wrapper ) Ġ} ĊĊĠĠĠ Ġfun Ġdelete All ( models : ĠCollection < T >, Ġdatabase Wrapper : ĠDatabase Wrapper ): ĠComp letable Ġ= ĊĠĠĠĠĠĠĠ Ġfrom Callable Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel Adapter . delete All ( models , Ġdatabase Wrapper ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġ< T Ġ: ĠAny > Ġfrom ( model Adapter : ĠModel Adapter < T >): ĠRX Model Adapter < T > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRX Model Adapter ( model Adapter ) ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġ< T Ġ: ĠAny > Ġfrom ( table : ĠClass < T >): ĠRX Model Adapter < T > Ġ= ĠRX Model Adapter ( table ) ĊĠĠĠ Ġ} Ċ } Ċ