/* ĊĠ ĠCopyright Ġ( c ) Ġ 2 0 1 8 - present , ĠSur f Studio ĠLLC . ĊĊĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); ĊĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . ĊĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat ĊĊĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 ĊĊĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware ĊĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , ĊĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . ĊĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand ĊĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġru . surf studio . android . recycler . extension . sticky . controller Ċ Ċ import Ġru . surf studio . android . easy adapter . controller . Base Item Controller Ċ import Ġru . surf studio . android . easy adapter . holder . Bind able ViewHolder Ċ import Ġru . surf studio . android . recycler . extension . sticky . item . Sticky Header Bind able Item Ċ Ċ abstract Ġclass ĠSt icky Header Bind able Item Controller < T , ĠH Ġ: ĠBind able ViewHolder < T >> ĊĠĠĠ Ġ: ĠBase Item Controller < H , ĠSt icky Header Bind able Item < T , ĠH >>() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġbind ( holder : ĠH , Ġitem : ĠSt icky Header Bind able Item < T , ĠH >) Ġ{ ĊĠĠĠĠĠĠĠ Ġbind ( holder , Ġitem . data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbind ( holder : ĠH , Ġdata : ĠT ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind ( data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Id ( item : ĠSt icky Header Bind able Item < T , ĠH >): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠgetItem Id ( item . data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Hash ( item : ĠSt icky Header Bind able Item < T , ĠH >): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠgetItem Hash ( item . data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetItem Id ( data : ĠT ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBase Item Controller . NO _ ID . toString () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetItem Hash ( data : ĠT ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ( data ?. hashCode () Ġ?: Ġ 0 ). toString () ĊĠĠĠ Ġ} Ċ }