package Ġjp . co . sg net . media Picker . internal . model Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . database . Cursor Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 4 . app . Fragment Activity Ċ import Ġandroid . support . v 4 . app . Loader Manager Ċ import Ġandroid . support . v 4 . content . Loader Ċ import Ġjp . co . sg net . media Picker . internal . entity data . Album Ċ import Ġjp . co . sg net . media Picker . internal . loader . Album Media Loader Ċ import Ġorg . jetbrains . annotations . Nullable Ċ import Ġjava . lang . ref . Weak Reference Ċ Ċ private Ġconst Ġval ĠARGS _ AL BU M Ġ= Ġ" args _ album " Ċ private Ġconst Ġval ĠARGS _ ENABLE _ CAPTURE Ġ= Ġ" args _ enable _ capture " Ċ private Ġconst Ġval ĠLO ADER _ ID Ġ= Ġ 2 Ċ Ċ class ĠAlbum Media Collection ( private Ġval Ġcontext : ĠFragment Activity , Ġprivate Ġvar Ġcallbacks : ĠAlbum Media Callbacks ?): ĠLoader Manager . Loader Callbacks < Cursor > Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġloader Manager Ġ: ĠLoader Manager Ġ= ĠLoader Manager . getInstance ( context ) ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate Loader ( id : ĠInt , Ġargs : ĠBundle ?): ĠLoader < Cursor > Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġalbum : ĠAlbum ? Ġ= Ġargs ?. get Parcelable ( ARGS _ AL BU M ) ĊĠĠĠĠĠĠĠ Ġval Ġenable Capture : ĠBoolean ? Ġ= Ġargs ?. getBoolean ( ARGS _ ENABLE _ CAPTURE , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġif Ġ( album Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġalbum Ġ= ĠAlbum (" ",""," ", 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠAlbum Media Loader . newInstance ( context , Ġalbum , Ġenable Capture !! ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonLoad Finished ( loader : ĠLoader < Cursor >, Ġcursor : ĠCursor ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġcursor ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallbacks ?. on Album Media Load ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Loader Reset ( loader : ĠLoader < Cursor >) Ġ{ ĊĠĠĠĠĠĠĠ Ġcallbacks ?. on Album Media Reset () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġload ( target : ĠAlbum ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġput Parcelable ( ARGS _ AL BU M , Ġtarget ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġloader Manager . init Loader ( LOAD ER _ ID , Ġargs , Ġthis ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Dest ory () Ġ{ ĊĠĠĠĠĠĠĠ Ġloader Manager . destroy Loader ( LOAD ER _ ID ) ĊĠĠĠĠĠĠĠ Ġcallbacks Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠAlbum Media Callbacks Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon Album Media Load ( cursor : ĠCursor ) ĊĠĠĠĠĠĠĠ Ġfun Ġon Album Media Reset () ĊĠĠĠ Ġ} Ċ }