package Ġuk . co . sentinel web . c uer . app . db Ċ Ċ import Ġorg . k oin . android . ext . k oin . android Application Ċ import Ġorg . k oin . dsl . module Ċ import Ġuk . co . sentinel web . c uer . app . db . entity . update . Media Update Mapper Ċ import Ġuk . co . sentinel web . c uer . app . db . init . Database Initializer Ċ import Ġuk . co . sentinel web . c uer . app . db . init . Json Database Initializer Ċ import Ġuk . co . sentinel web . c uer . app . db . mapper .* Ċ import Ġuk . co . sentinel web . c uer . app . db . repository .* Ċ import Ġuk . co . sentinel web . c uer . app . db . type converter . Instant Type Converter Ċ Ċ object ĠDatabase Module Ġ{ ĊĠĠĠ Ġval Ġdb Module Ġ= Ġmodule Ġ{ ĊĠĠĠĠĠĠĠ Ġsingle Ġ{ Ġget < Room Wrapper >(). create Db () Ġ} ĊĠĠĠĠĠĠĠ Ġsingle Ġ{ ĠRoom Wrapper ( android Application ()) Ġ} ĊĊĠĠĠĠĠĠĠ Ġsingle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRoom Channel Database Repository ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Dao Ġ= Ġget < App Database >(). channel Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġco Provider Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Ġ= Ġget () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfactory < Channel Database Repository > Ġ{ Ġget < Room Channel Database Repository >() Ġ} ĊĊĠĠĠĠĠĠĠ Ġsingle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRoom Media Database Repository ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmedia Dao Ġ= Ġget < App Database >(). media Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmedia Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġco Provider Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmedia Update Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Database Repository Ġ= Ġget () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfactory < Media Database Repository > Ġ{ Ġget < Room Media Database Repository >() Ġ} ĊĊĠĠĠĠĠĠĠ Ġsingle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRoom Playlist Database Repository ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Dao Ġ= Ġget < App Database >(). playlist Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Item Dao Ġ= Ġget < App Database >(). playlist Item Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Item Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Media Repository Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Channel Repository Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Dao Ġ= Ġget < App Database >(). channel Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġco Provider Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Ġ= Ġget () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfactory < Playlist Database Repository > Ġ{ Ġget < Room Playlist Database Repository >() Ġ} ĊĊĠĠĠĠĠĠĠ Ġsingle Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRoom Playlist Item Database Repository ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Item Dao Ġ= Ġget < App Database >(). playlist Item Dao (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaylist Item Mapper Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Media Repository Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġco Provider Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog Ġ= Ġget (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatabase Ġ= Ġget () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfactory < Playlist Item Database Repository > Ġ{ Ġget < Room Playlist Item Database Repository >() Ġ} Ċ Ċ // ĠĠĠĠĠĠĠ Ġsingle Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ ĠMemory Database Initializer ( Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġy t Interactor Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Media Repository Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Playlist Repository Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġroom Playlist Item Repository Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtime Provider Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Provider Ġ= Ġget (), Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog Ġ= Ġget () Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ċ // ĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsingle < Database Initializer > Ġ{ ĠJson Database Initializer ( get (), Ġget (), Ġget (), Ġget (), Ġget ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠPlaylist Mapper ( get (), Ġget (), Ġget (), Ġget ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠPlaylist Item Mapper ( get ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠMedia Mapper ( get (), Ġget ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠMedia Update Mapper ( get ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠImage Mapper () Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠChannel Mapper ( get ()) Ġ} ĊĠĠĠĠĠĠĠ Ġfactory Ġ{ ĠInstant Type Converter () Ġ} ĊĠĠĠ Ġ} Ċ }