/* Ċ Ġ* ĠCreated Ġby Ġn pha u Ġon Ġ 3 1 / 1 0 / 2 0 2 1 , Ġ 2 2 : 0 8 Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 1 Ġ. ĠAll Ġrights Ġreserved . Ċ Ġ* ĠLast Ġmodified Ġ 3 1 / 1 0 / 2 0 2 1 , Ġ 2 1 : 3 7 Ċ Ġ*/ ĊĊ Ċ package Ġcom . n pha u . android . shared . data . paging Ċ Ċ import Ġandroidx . paging . Pager Ċ import Ġandroidx . paging . Paging Config Ċ import Ġandroidx . paging . Paging Source Ċ Ċ @ Dsl Marker Ċ internal Ġannotation Ġclass ĠP aging Builder DSL Ċ Ċ data Ġclass ĠP aging Config Builder ( ĊĠĠĠ Ġvar ĠpageSize : ĠInt Ġ= Ġ 1 0 , ĊĠĠĠ Ġvar Ġinitial Load Size : ĠInt Ġ= Ġ 1 0 , ĊĠĠĠ Ġvar Ġprefetch Distance : ĠInt Ġ= Ġ 1 0 , ĊĠĠĠ Ġvar Ġenable Place holders : ĠBoolean Ġ= Ġtrue Ċ ) Ċ Ċ @ Paging Builder DSL Ċ object ĠP aging Builder Ġ{ ĊĊĠĠĠ Ġ@ Paging Builder DSL ĊĠĠĠ Ġfun Ġpaging Config ( builder : Ġ( Paging Config Builder . () Ġ-> ĠUnit )? Ġ= Ġnull ): ĠP aging Config Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpaging Ġ= ĠP aging Config Builder () ĊĠĠĠĠĠĠĠ Ġbuilder ?. let Ġ{ Ġpaging . apply ( it ) Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠP aging Config ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= Ġpaging . pageSize , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinitial Load Size Ġ= Ġpaging . initial Load Size , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprefetch Distance Ġ= Ġpaging . prefetch Distance , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġenable Place holders Ġ= Ġpaging . enable Place holders ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġ< Key Ġ: ĠAny , ĠValue Ġ: ĠAny > Ġcreate Pager Config ( ĊĠĠĠ Ġpaging Source : ĠP aging Source < Key , ĠValue >, ĊĠĠĠ Ġpaging Config : ĠP aging Config Ċ ): ĠP ager < Key , ĠValue > Ġ= ĠP ager ( config Ġ= Ġpaging Config , Ġpaging Source Factory Ġ= Ġ{ Ġpaging Source Ġ})