package Ġorg . sen i ors ig an . m ang are ader . use cases Ċ Ċ import Ġandroid . util . Log Ċ import Ġorg . sen i ors ig an . m ang are ader . TAG Ċ import Ġorg . sen i ors ig an . m ang are ader . data . Chapter s Repository Ċ import Ġorg . sen i ors ig an . m ang are ader . data . cache . Book marks Repository Ċ import Ġorg . sen i ors ig an . m ang are ader . models . Bookmark Item Ċ import Ġorg . sen i ors ig an . m ang are ader . models . M anga Item Ċ Ċ class ĠBook marks Manager ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġchapter s Repository : ĠChapter s Repository , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġbook marks Repository : ĠBook marks Repository Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġsave ( manga : ĠM anga Item ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbookmark Ġ= ĠBook mark Item ( manga ) ĊĠĠĠĠĠĠĠ Ġbook marks Repository . save ( bookmark ) ĊĠĠĠĠĠĠĠ Ġload Chapter s ( bookmark ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsave Or Remove ( manga : ĠM anga Item ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbook marks Repository . find ( manga . url , Ġ{ Ġbookmark Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( bookmark Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbook marks Repository . remove ( bookmark ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsave ( manga ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġload Chapter s ( bookmark : ĠBook mark Item ) Ġ{ ĊĠĠĠĠĠĠĠ Ġchapter s Repository . findAll ( bookmark . manga , Ġ{ Ġchapter s Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Bookmark Ġ= ĠBook mark Item ( bookmark . manga , Ġchapter s ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbook marks Repository . update ( new Bookmark ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnew Chapter s Ġ= Ġchapter s Ġ- Ġbookmark . chapter s ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . d (" Book marks Manager ", Ġ" New Ġchapter s Ġ$ new Chapter s ") ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsearch ( callback : Ġ( List < M anga Item >) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġbook marks Repository . findAll Ġ{ Ġbook marks Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcallback ( bookmarks . map Ġ{ Ġit . manga Ġ}) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠfindAll ( callback : Ġ( List < Bookmark Item >) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbook marks Repository . findAll ( callback ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfind ( manga : ĠM anga Item , Ġcallback : Ġ( Bookmark Item ?) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbook marks Repository . find ( manga . url , Ġcallback ) ĊĠĠĠ Ġ} Ċ }