package Ġcom . mike pen z . about libraries Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . pm . Application Info Ċ import Ġandroid . content . pm . Package Info Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . os . AsyncTask Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . util . Log Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Filter Ċ import Ġandroid . widget . Filter able Ċ import Ġandroidx . recyclerview . widget . Default Item Animator Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . mike pen z . about libraries . entity . Library Ċ import Ġcom . mike pen z . about libraries . ui . item . Header Item Ċ import Ġcom . mike pen z . about libraries . ui . item . Library Item Ċ import Ġcom . mike pen z . about libraries . ui . item . Loader Item Ċ import Ġcom . mike pen z . about libraries . ui . item . Simple Library Item Ċ import Ġcom . mike pen z . about libraries . util . do On Apply System Window Insets Ċ import Ġcom . mike pen z . about libraries . util . extract Boolean Bundle Or Resource Ċ import Ġcom . mike pen z . about libraries . util . extract String Bundle Or Resource Ċ import Ġcom . mike pen z . fast adapter . Fast Adapter Ċ import Ġcom . mike pen z . fast adapter . I Item Ċ import Ġcom . mike pen z . fast adapter . adapters . Item Adapter Ċ import Ġjava . util .* Ċ import Ġkotlin . collections . ArrayList Ċ Ċ /** Ċ Ġ* ĠFragment Ġimplementation Ġcreating Ġthe Ġabout libraries ĠUI Ċ Ġ*/ Ċ class ĠLib s Fragment Compat Ġ: ĠFilter able Ġ{ ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġadapter : ĠFast Adapter < I Item <* >> ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġitem Adapter : ĠItem Adapter < I Item <* >> ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġbuilder : ĠLib s Builder ĊĠĠĠ Ġprivate Ġvar Ġlibraries : ĠArrayList < Library > Ġ= ĠArrayList () ĊĠĠĠ Ġprivate Ġvar Ġcomparator : ĠComparator < Library >? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġlib Task : ĠLibrary Task ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġset Library Comparator ( comparator : ĠComparator < Library >) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . comparator Ġ= Ġcomparator ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠonCreate View ( context : ĠContext , Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?, Ġarguments : ĠBundle ?): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdata Ġ= Ġarguments ?. get Serializable (" data ") Ġas ? ĠLib s Builder ĊĠĠĠĠĠĠĠ Ġbuilder Ġ= Ġif Ġ( data Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" About Libraries ", Ġ" Fallback Ġto Ġdefault Ġconfiguration , Ġdue Ġto Ġmissing Ġargument ") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLib s Builder () ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdata ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġvar Ġview Ġ= Ġinflater . inflate ( R . layout . fragment _ opensource , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġ// allows Ġto Ġmodify Ġthe Ġview Ġbefore Ġcreating ĊĠĠĠĠĠĠĠ Ġview Ġ= ĠLib s Configuration . ui Listener ?. pre On Create View ( view ) Ġ?: Ġview ĊĊĠĠĠĠĠĠĠ Ġ// Ġinit ĠCard View ĊĠĠĠĠĠĠĠ Ġval Ġre cyclerView : ĠRecyclerView Ġ= Ġif Ġ( view . id Ġ== ĠR . id . card ListView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview Ġas ĠRecyclerView ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . findViewById ( R . id . card ListView ) Ġas ĠRecyclerView ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= ĠLinearLayoutManager ( context ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( Lib s Configuration . item Animator Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġre cyclerView . item Animator Ġ= ĠLib s Configuration . item Animator ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġre cyclerView . item Animator Ġ= ĠDefault Item Animator () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġitem Adapter Ġ= ĠItem Adapter () ĊĠĠĠĠĠĠĠ Ġadapter Ġ= ĠFast Adapter . with ( item Adapter ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= Ġadapter ĊĊĠĠĠĠĠĠĠ Ġif Ġ( builder . show Loading Progress ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Adapter . add ( Loader Item ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// allows Ġto Ġmodify Ġthe Ġview Ġafter Ġcreating ĊĠĠĠĠĠĠĠ Ġview Ġ= ĠLib s Configuration . ui Listener ?. post On Create View ( view ) Ġ?: Ġview ĊĊĠĠĠĠĠĠĠ Ġre cyclerView . do On Apply System Window Insets ( Gravity . BOTTOM , ĠGr avity . START , ĠGr avity . END ) ĊĊĠĠĠĠĠĠĠ Ġitem Adapter . item Filter . filter Predicate Ġ= Ġfun Ġ( item , Ġconstraint ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠDon 't Ġdo Ġany Ġfiltering Ġif Ġconstraint Ġis Ġnull / blank ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( constraint . isNull Or Blank ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠLibrary Item Ġ-> Ġitem . library . library Name . contains ( constraint , Ġignore Case Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠSimple Library Item Ġ-> Ġitem . library . library Name . contains ( constraint , Ġignore Case Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon View Created ( view : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// load Ġthe Ġdata Ġ( only Ġpossible Ġif Ġwe Ġwere Ġable Ġto Ġget Ġthe ĠArguments ĊĠĠĠĠĠĠĠ Ġif Ġ( view . context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// fill Ġthe Ġfragment Ġwith Ġthe Ġcontent ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlib Task Ġ= ĠLibrary Task ( view . context . application Context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexecute Lib Task ( lib Task ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġexecute Lib Task ( library Task : ĠLibrary Task ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( library Task Ġ!= Ġnull Ġ&& Ġ:: builder . isInitialized ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( builder . lib Task Executor ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLib Task Executor . THREAD _ POOL _ EXECUT OR Ġ-> Ġlibrary Task . execute On Executor ( AsyncTask . THREAD _ POOL _ EXECUT OR ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLib Task Executor . SERIAL _ EXECUT OR Ġ-> Ġlibrary Task . execute On Executor ( AsyncTask . SERIAL _ EXECUT OR ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLib Task Executor . DEFAULT _ EXECUT OR Ġ-> Ġlibrary Task . execute () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( lib Task Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlib Task ?. cancel ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlib Task Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Filter (): ĠFilter Ġ= Ġitem Adapter . item Filter ĊĊĠĠĠ Ġinner Ġclass ĠLibrary Task ( var Ġctx : ĠContext ) Ġ: ĠAsync Task < String , ĠUnit , ĠUnit >() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġversion Name : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġversion Code : ĠInt ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġicon : ĠDrawable ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Pre Execute () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// started Ġloading ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLib s Configuration . lib Task Callback ?. on Lib Task Started () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdo In Background ( var arg Ġstrings : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// init Ġthe ĠLib s Ġinstance Ġwith Ġfields Ġif Ġthey Ġwere Ġset ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlibs : ĠLib s Ġ= Ġif Ġ( builder . fields . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLib s ( ctx , Ġlibrary Enchant ments Ġ= Ġbuilder . library Enchant ment ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLib s ( ctx , Ġbuilder . fields , Ġbuilder . library Enchant ment ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// fill Ġthe Ġbuilder Ġwith Ġthe Ġinformation ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . show License Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ show License , Ġ" about Libraries _ show License ") Ġ?: Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . show Version Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ show Version , Ġ" about Libraries _ show Version ") Ġ?: Ġtrue ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Show Icon Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ about Show Icon , Ġ" about Libraries _ description _ show Icon ") Ġ?: Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Show Version Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ about Show Version , Ġ" about Libraries _ description _ show Version ") Ġ?: Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Show Version Name Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ about Show Version Name , Ġ" about Libraries _ description _ show Version Name ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Show Version Code Ġ= Ġctx . extract Boolean Bundle Or Resource ( builder ._ about Show Version Code , Ġ" about Libraries _ description _ show Version Code ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about AppName Ġ= Ġctx . extract String Bundle Or Resource ( builder . about AppName , Ġ" about Libraries _ description _ name ") Ġ?: Ġ"" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Description Ġ= Ġctx . extract String Bundle Or Resource ( builder . about Description , Ġ" about Libraries _ description _ text ") Ġ?: Ġ"" ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 1 Ġ= Ġctx . extract String Bundle Or Resource ( builder . about App Special 1 , Ġ" about Libraries _ description _ special 1 _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 1 Description Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . extract String Bundle Or Resource ( builder . about App Special 1 Description , Ġ" about Libraries _ description _ special 1 _ text ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 2 Ġ= Ġctx . extract String Bundle Or Resource ( builder . about App Special 2 , Ġ" about Libraries _ description _ special 2 _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 2 Description Ġ= Ġctx . extract String Bundle Or Resource ( builder . about App Special 2 Description , Ġ" about Libraries _ description _ special 2 _ text ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 3 Ġ= Ġctx . extract String Bundle Or Resource ( builder . about App Special 3 , Ġ" about Libraries _ description _ special 3 _ name ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about App Special 3 Description Ġ= Ġctx . extract String Bundle Or Resource ( builder . about App Special 3 Description , Ġ" about Libraries _ description _ special 3 _ text ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// apply Ġmodifications ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlibs . modify Libraries ( builder . library Modification ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// fetch Ġthe Ġlibraries Ġand Ġsort Ġif Ġa Ġcomparator Ġwas Ġset ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdo Default Sort Ġ= Ġbuilder . sort Ġ&& Ġnull Ġ== Ġbuilder . library Comparator Ġ&& Ġnull Ġ== Ġcomparator ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġlibraries Ġ= Ġlibs . prepare Libraries ( ctx , Ġbuilder . internal Libraries , Ġbuilder . exclude Libraries , Ġbuilder . auto Detect , Ġbuilder . check Cached Detection , Ġdo Default Sort ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( comparator Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCollections . sort ( libraries , Ġcomparator ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( builder . library Comparator Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCollections . sort ( libraries , Ġbuilder . library Comparator ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// load Ġthe Ġdata Ġfor Ġthe Ġheader ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġshow VersionInfo Ġ= Ġbuilder . about Show Version Ġ|| Ġbuilder . about Show Version Name Ġ|| Ġbuilder . about Show Version Code ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . about Show Icon Ġ&& Ġshow VersionInfo ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// get Ġthe Ġpackage Manager Ġto Ġload Ġand Ġread Ġsome Ġvalues Ġ: D ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpm Ġ= Ġctx . package Manager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// get Ġthe ĠpackageName ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠpackageName Ġ= Ġctx . packageName ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Try Ġto Ġload Ġthe Ġapplication Info ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġapp Info : ĠApplication Info ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġpackage Info : ĠPackage Info ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapp Info Ġ= Ġpm . getApplication Info ( packageName , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpackage Info Ġ= Ġpm . get Package Info ( packageName , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ignored : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġignored ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Set Ġthe ĠIcon Ġor Ġhide Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . about Show Icon Ġ&& Ġapp Info Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġicon Ġ= Ġapp Info . load Icon ( pm ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// set Ġthe ĠVersion Ġor Ġhide Ġit ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Name Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Code Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( package Info Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Name Ġ= Ġpackage Info . version Name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Code Ġ= Ġpackage Info . version Code ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Post Execute ( nothing : ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// remove Ġloader ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Adapter . clear () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Add Ġthe Ġheader ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġshow VersionInfo Ġ= Ġbuilder . about Show Version Ġ|| Ġbuilder . about Show Version Name Ġ|| Ġbuilder . about Show Version Code ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( builder . about Show Icon Ġ&& Ġshow VersionInfo ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// add Ġthis Ġcool Ġthing Ġto Ġthe Ġheader View Ġof Ġour ĠlistView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem Adapter . add ( Header Item ( builder ). with About Version Name ( version Name ). with About Version Code ( version Code ). with About Icon ( icon )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// add Ġthe Ġlibs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlibrary Items Ġ= ĠArrayList < I Item <* >>() ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinterceptor Ġ= ĠLib s Configuration . libs Item Interceptor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( library Ġin Ġlibraries ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinterceptor Ġ!= Ġnull Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlibrary Items . add ( interceptor ( library , Ġbuilder )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder . about Minimal Design Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlibrary Items . add ( Simple Library Item ( library , Ġbuilder )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlibrary Items . add ( Library Item ( library , Ġbuilder )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Adapter . add ( library Items ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Post Execute ( nothing ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// finished Ġloading ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLib s Configuration . lib Task Callback ?. on Lib Task Finished ( item Adapter ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ