package Ġio . github . z wi eb ack . family finance . business . exchange _ rate . adapter Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . LayoutInflater Ċ import Ġio . github . z wi eb ack . family finance . business . exchange _ rate . filter . Exchange Rate Filter Ċ import Ġio . github . z wi eb ack . family finance . business . exchange _ rate . listener . On Exchange Rate ClickListener Ċ import Ġio . github . z wi eb ack . family finance . business . exchange _ rate . query . Exchange Rate QueryBuilder Ċ import Ġio . github . z wi eb ack . family finance . core . adapter . Binding Holder Ċ import Ġio . github . z wi eb ack . family finance . core . adapter . Entity Adapter Ċ import Ġio . github . z wi eb ack . family finance . core . adapter . Entity Provider Ċ import Ġio . github . z wi eb ack . family finance . core . model . Exchange Rate View Ċ import Ġio . github . z wi eb ack . family finance . databinding . Item Exchange Rate Binding Ċ import Ġio . re query . Persist able Ċ import Ġio . re query . query . Result Ċ import Ġio . re query . reactivex . Reactive Entity Store Ċ Ċ class ĠExchange Rate Adapter ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġclick Listener : ĠOn Exchange Rate ClickListener , ĊĠĠĠ Ġdata : ĠReactive Entity Store < Persist able >, ĊĠĠĠ Ġfilter : ĠExchange Rate Filter Ċ ) Ġ: ĠEntity Adapter < Exchange Rate View , ĠExchange Rate Filter , ĠItem Exchange Rate Binding , ĠOn Exchange Rate ClickListener >( ĊĠĠĠ ĠExchange Rate View .` $ TYPE `, ĊĠĠĠ Ġcontext , ĊĠĠĠ Ġclick Listener , ĊĠĠĠ Ġdata , ĊĠĠĠ Ġfilter Ċ ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Provider ( context : ĠContext ): ĠEntity Provider < Exchange Rate View > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠExchange Rate View Provider ( context ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinf late ( in flater : ĠLayoutInflater ): ĠItem Exchange Rate Binding Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠItem Exchange Rate Binding . inflate ( in flater ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġextract Entity ( binding : ĠItem Exchange Rate Binding ): ĠExchange Rate View Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġbinding . exchange Rate Ġas ĠExchange Rate View ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġperform Query (): ĠResult < Exchange Rate View > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠExchange Rate QueryBuilder . create ( data ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Currency Id ( filter . take Currency Id ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with StartDate ( filter . startDate ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with EndDate ( filter . endDate ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Start Value ( filter . start Value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with End Value ( filter . end Value ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" PARAMETER _ NAME _ CHANGED _ ON _ OVERRIDE ") ĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( ĊĠĠĠĠĠĠĠ Ġexchange Rate : ĠExchange Rate View ?, ĊĠĠĠĠĠĠĠ Ġholder : ĠBinding Holder < Item Exchange Rate Binding >, Ġposition : ĠInt ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġexchange Rate ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . binding . exchange Rate Ġ= Ġexchange Rate ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprovider . setup Icon ( holder . binding . icon . icon , Ġexchange Rate ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ